Goodnotes Logo

Goodnotes

Platform iOS Engineer (Sync, Collaboration)

Posted Yesterday
Be an Early Applicant
Easy Apply
Remote
28 Locations
Mid level
Easy Apply
Remote
28 Locations
Mid level
As a Platform iOS Engineer, you will design and build a seamless iOS and macOS application, focusing on synchronization and collaboration features while ensuring data integrity and real-time access for users.
The summary above was generated by AI

At Goodnotes, we believe that every individual holds untapped potential waiting to be unleashed. By reimagining the way we interact with information, we’re merging human creativity with the breakthrough capabilities of AI. Our renewed vision and mission drive us to create the best medium for human and AI collaboration, empowering users to explore new dimensions of productivity, creativity, and learning. Join us on this journey as we transform digital note-taking into an inspiring and innovative experience.

Our Values:

Dream big

  • Be visionary, strategic, and open to innovation

Build great things

  • Work in service of our users, always improving and pushing higher

Operate like an owner

  • Take responsibility with bold decision-making and bias for action

Win like a sports team

  • Be trusting and collaborative while empowering others

Learn and grow fast

  • Never stop learning and iterate fast

Share our passion

  • Share ideas and practice enthusiasm and joy

Be user obsessed

  • Empathetic, inquisitive, practical
About the team:

At Goodnotes, we are driven by a mission: to connect millions of users across devices and platforms through seamless data synchronization and collaboration. As a Platform iOS Engineer, you will play a pivotal role in bringing this vision to life. You will work on cutting-edge challenges in networked operations, including HTTP and WebSocket communications, while building our sync engine—a fully offline-first, distributed event-sourced system. Beyond sync, you may develop collaboration features that enable users to work together seamlessly. Your work will enable users to access their data in near real-time, collaborate effortlessly with others, and trust that their information is always backed up and available. Join us in creating the infrastructure that powers meaningful connections and collaboration for Goodnotes users worldwide.

You will:

  • Design and build an iOS and macOS application used by tens of millions of users
  • Architect and design scalable solutions that are easy to maintain to allow development of exciting features and support more users.
  • Implement elegant solutions with clean code.
  • Enable communication with the iOS, Android, Windows, Web frontend and QA teams
  • Continuously improve the development practices through automation, documentation and testing
  • Share knowledge through reviews, design docs, and mentorship

You will need:

  • Expertise in Swift programming. Knowledge of SwiftUI is advantageous
  • Networking expertise on iOS, including HTTP, WebSockets, and background transfers
  • Experience with offline-first data models, sync engines or distributed systems
  • Strong understanding of computer science fundamentals. You enjoy solving algorithm and data structure problems
  • Excellent problem solving, communication, and storytelling skills
  • A love of software craftsmanship
  • Strong sense of the best tools for any task
  • Shipped one or more non-trivial iOS apps on respective app stores
  • Big plus if you have experience cross-compiling codebase on different mobile platforms

Even if you don’t meet all the criteria listed above, we would still love to hear from you! Goodnotes places a lot of value on learning and development and will support your growth if needed.

The stack:

  • Programming Language: The vast majority of our code is written in Swift
  • Concurrency: We have a large, old, but modular codebase. We use modern Swift Concurrency as much as possible as we gradually move away from RxSwift
  • UI code: As much new UI code as possible is in SwiftUI. We fall back to UIKit when needed and re-use the majority of it on macOS using Catalyst
  • Cross-platform: We re-use our core packages on cross-platform using SwiftWasm, UI for other platforms is written using React or their respective native APIs
  • Dependencies: We exclusively use Swift Package Manager and frequently make new local packages
  • Source control and builds: We have a mono-repo and use GitHub and Pull Requests. We kick off builds using a Slack bot
  • Continuous Integration: We use CircleCI which means our configuration is checked in with our code. We have unit tests for all of our modules which run on every branch. UI tests are run daily and before release
  • Release cadence: We QA and release on a weekly schedule

The interview process:

  • Introduction: The Talent Team want to hear more about your background, what you are looking for, and why you’d like to join Goodnotes.
  • Technical Screening: A timed coding challenge on the Hackerrank platform.
  • Onsite live coding and technical interview: A live coding call with one of our engineers. This is where you get to see what it would be like working at Goodnotes, as well as a chance to ask any engineering questions you may have
  • Hiring Manager interview: A call with your hiring manager. This is the person who will be managing you day to day, working on your growth and development with you as well as support you throughout your career at Goodnotes.
  • Values interview: Conversations with Goodnotes teammates focused on our values, including taking ownership and building great things.

Please note that technical interviews are held onsite in our office locations (London, Hong Kong, and Singapore). All transport, accommodation, and costs involved will be covered by the Goodnotes team.

What’s in it for you:

  • Remote friendly
  • Flexible working hours and location
  • Medical insurance for you and your dependents
  • Great annual leave allowance
  • Meaningful equity in a profitable tech-startup
  • Budget for things like noise-cancelling headphones, setting up your home office, personal development, professional training, and health & wellness
  • Sponsored visits to our Hong Kong or London office every 2 years
  • Company wide annual offsite
  • Fantastic maternity and paternity packages and allowances

Note: Employment is contingent upon successful completion of background checks, including verification of employment, education, and criminal records.

Note: Employment is contingent upon successful completion of background checks, including verification of employment, education, and criminal records.

By submitting your application, you acknowledge that you have read and understood our Candidate Privacy Notice, which provides important information about the data we collect during the application process. You can find it here. 
 

Top Skills

CircleCI
HTTP
React
Swift
Swift Package Manager
Swiftui
Websockets

Similar Jobs

Yesterday
Easy Apply
Remote
31 Locations
Easy Apply
Senior level
Senior level
Cloud • Security • Software • Cybersecurity • Automation
The Senior Backend Engineer will develop scalable product features, lead technical initiatives, mentor engineers, and guide technical strategies related to GitLab Geo.
Top Skills: PostgresRuby On Rails
2 Days Ago
Remote or Hybrid
Athens, GRC
Senior level
Senior level
Big Data • Food • Hardware • Machine Learning • Retail • Automation • Manufacturing
The role involves leading and accelerating growth for Lacta and Merenda brands in Greece, operating brand strategies, managing P&L, developing marketing plans, and ensuring effective execution with cross-functional teams.
2 Days Ago
In-Office or Remote
15 Locations
Mid level
Mid level
Machine Learning • Natural Language Processing
The role involves designing and implementing machine learning solutions, managing projects from idea to deployment, and optimizing models using AWS and Docker.
Top Skills: AWSDockerEc2PythonPyTorchS3SagemakerScikit-LearnTensorFlow

What you need to know about the Toronto Tech Scene

Although home to some of the biggest names in tech, including Google, Microsoft and Amazon, Toronto has established itself as one of the largest startup ecosystems in the world. And with over 2,000 startups — more than 30 percent of the country's total startups — Toronto continues to attract new businesses. Be it helping entrepreneurs manage their finances, simplifying business operations by automating payroll or assisting pharmaceutical companies in launching new drugs, the city's tech scene is just getting started.

Sign up now Access later

Create Free Account

Please log in or sign up to report this job.

Create Free Account