About the job
Location: Fully remote. We’re prioritizing candidates with solid overlap with US working hours (South America ideal).
We build a camera-heavy iOS app that scans real spaces and turns them into CAD deliverables. It mixes ARKit + sensors + internal CV libraries with regular functionality like checkout and subscriptions. We’re hiring a senior engineer to raise quality and improve system design - not just ship more features.
Responsibilities
- Deliver product features end-to-end, with a bias toward shipping.
- Improve app state / data flow and app ↔ backend contracts.
- Drive practical automated testing adoption: prioritize networking/data/state layers, and push toward “no new code without tests” over time.
- Improve reliability and clarity across complex user journeys (i.e. purchase/subscription flows and feature-flag combinations).
- Debug hard problems: crashes, concurrency/threading, performance, memory/lifecycle.
- Communicate clearly in English (written and spoken) and collaborate well across roles.
Qualifications (Must-haves)
- You’ve shipped and maintained real production iOS apps.
- Strong Swift + iOS fundamentals: networking, persistence, lifecycle, performance.
- Comfortable with Swift Concurrency (async/await) and can reason about threading bugs (GCD familiarity helps).
- UIKit + SwiftUI experience (we’re ~60% SwiftUI / ~40% UIKit), Core Data experience.
- Strong grasp of distributed systems realities from a client perspective: retries, idempotency, eventual consistency, and degraded-mode UX.
- Testing discipline: XCTest, architectural testability; UI tests/snapshot tests are a plus.
Nice-to-haves
- ARKit / camera-heavy apps / sensor-heavy work.
- Designed sync / high-volume networking features with explicit server-load considerations (request budgets, batching/pagination, concurrency limits, retries/backoff).
- Habit of writing mobile designs that include app↔backend contract details: failure modes, rate limiting, and how we validate performance (metrics/tests).
- Experience collaborating with backend to evolve APIs for efficiency (batch endpoints, server-side filtering etc), instead of scaling by “more client requests.”
- WKWebView + JS/native boundary debugging.
How we work
- Remote-first, cross-functional team (iOS, Backend, QA, CV, Product/Design).
- AI-assisted coding is encouraged; good judgment is required.
- Release cadence aims for ~2-week TestFlight cycles (occasionally changes).
Pay, perks and such:
At Canvas, we offer a full slate of benefits, including competitive salaries, stock options, medical, dental, vision, life and disability coverages, FSA, HSA, flexible vacation, a 401(k) plan (or equivalent) and a parental leave program. We also offer some not-so-standard, extra-fun benefits, including learning and development stipends, along with a few others to come.
We value diversity and believe forming teams in which everyone can be their authentic self is key to our success. We encourage people from underrepresented backgrounds and different industries to apply. Come join us and find out what the best work of your career could look like here at Canvas
About the company
- B2B
- Growth StageExpanding market presence
Employees joined from
Similar Jobs









