Senior mobile game developer — iOS puzzle game, JavaScript + Capacitor, pre-launch polish
Worldwide
We are finishing an iOS puzzle game and need one experienced developer for the final stretch. The app is built and passes a large automated test suite on every change. This is polish and completion work, not a rebuild, and not a rescue. THE STACK Plain browser JavaScript (no framework, no bundler) running inside a Capacitor shell, with a small Swift host for StoreKit, GameKit and ads. If you have only used Unity, this is not a fit. THE WORK, in rough order 1. Accessibility pass on the interface: tap targets to Apple's minimum, text sizing, and support for the system Larger Text setting. 2. Analytics instrumentation: define and wire the events we need to read retention, session length and conversion after launch. 3. Content tooling: extend our level generator with additional objective types. 4. General hardening across the codebase. HOW WE WORK, and please read this part before applying Every change ships with an automated test that has been shown to FAIL before the fix and pass after it. We do not accept a green test that has never been red. Every claim in a report carries the file and line it was read from. If you find something outside the scope of your task you name it, you do not fix it. This is not unusual for us, it is how the whole project runs, and candidates who find it excessive should not apply. You will work in a private repository against a protected main branch, through pull requests. WHAT WE ARE LOOKING FOR Strong JavaScript. Real iOS shipping experience. Comfortable reading a large existing codebase written by other people and matching its conventions rather than reformatting it. TO APPLY Do not send a generic proposal; we will not read it. Answer these three, briefly: 1. Describe a bug you fixed where your first fix was wrong. What did the second one change, and how did you know the first was wrong? 2. How do you satisfy yourself that a test you have just written would actually catch the defect it is named after? 3. You are asked to change one function. You notice a separate, unrelated bug two lines below it. What do you do? Start with the word "opera" so we know you read this. Fixed weekly hours can be discussed. Details of the app under NDA after a first call.
- Less than 30 hrs/weekHourly
- 1-3 monthsDuration
- ExpertExperience Level
$30.00
-
$40.00
Hourly- Remote Job
- Ongoing projectProject Type
Skills and Expertise
Activity on this job
- Proposals:10 to 15
- Last viewed by client:yesterday
- Interviewing:1
- Invites sent:8
- Unanswered invites:1
About the client
- SwitzerlandGenève5:16 AM
- $16K total spent42 hires, 3 active
- 171 hours
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by