We want to make work and study more efficient and enjoyable, by providing the best digital paper solution possible. We plan to be the go-to tool for all forms of notes. Our digital paper and learning ecosystem inspires anyone to take notes, share what they know, collaborate with others, and learn as a community

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
Take ownership
—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:

Goodnotes is on a mission to revolutionise the in-classroom learning experience by creating an interactive environment, where students and teachers can connect through our product.
As Lead Engineer you will be part of building a new product from scratch through partnering with external educators and colleagues.
You will be part of a distributed team across Europe and Asia, with shared time for collaborative activities such as planning, retros, stand-ups, and brainstorming sessions.

You will use a broad and modern tech stack with:

  • 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

This is the role for you, if you’re excited to work on the things listed below:

  • Build mission-critical services used by tens of millions of users.
  • Lead in the architecture and design of scalable, easily maintainable solutions to allow development of exciting features and support greater users
  • You enjoy coding and want to remain 'hands-on'
  • Play a key role in shaping technical roadmaps
  • Prioritise features and improvements based on business objectives and technical feasibility.
  • Conduct regular design and code reviews to ensure adherence to best practices and maintain code quality.
  • Drive continuous improvement of engineering standards, tooling, and processes.
  • Identify areas for optimisation and implement solutions to enhance team productivity and code quality.
  • Share your knowledge and experience with the rest of the team

The skills you will need to be successful in the above:

  • Expertise in Swift programming with a strong knowledge of design patterns, architectural principles, and best practices.
  • Strong understanding of computer science fundamentals, you enjoy solving algo and data structure puzzles
  • Proven track record of solving complex technical problems and making sound technical decisions.
  • Experience in the prioritisation, delegation, planning, and execution of tasks.
  • Leverage data to understand our users and our product in-depth, identify areas of opportunity and execute projects to drive user growth and engagement
  • Experience in driving cross-functional teams and collaborating effectively with product managers, designers, and other stakeholders.
  • A growth mindset with a commitment to continuous learning and improvement.
  • 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. Candidates with less experience will be considered as Senior iOS Engineers.

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 online coding skills test.
  • Live coding & 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 the 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.
  • Passion presentation: A short presentation on something you are passionate about or are proud of

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/ paternity packages and allowances

Apply for this Job

* Required
resume chosen  
(File types: pdf, doc, docx, txt, rtf)
cover_letter chosen  
(File types: pdf, doc, docx, txt, rtf)

Voluntary Self-Identification

For government reporting purposes, we ask candidates to respond to the below self-identification survey. Completion of the form is entirely voluntary. Whatever your decision, it will not be considered in the hiring process or thereafter. Any information that you do provide will be recorded and maintained in a confidential file.

As set forth in Goodnotes’s Equal Employment Opportunity policy, we do not discriminate on the basis of any protected group status under any applicable law.

Race & Ethnicity Definitions

If you believe you belong to any of the categories of protected veterans listed below, please indicate by making the appropriate selection. As a government contractor subject to the Vietnam Era Veterans Readjustment Assistance Act (VEVRAA), we request this information in order to measure the effectiveness of the outreach and positive recruitment efforts we undertake pursuant to VEVRAA. Classification of protected categories is as follows:

A "disabled veteran" is one of the following: a veteran of the U.S. military, ground, naval or air service who is entitled to compensation (or who but for the receipt of military retired pay would be entitled to compensation) under laws administered by the Secretary of Veterans Affairs; or a person who was discharged or released from active duty because of a service-connected disability.

A "recently separated veteran" means any veteran during the three-year period beginning on the date of such veteran's discharge or release from active duty in the U.S. military, ground, naval, or air service.

An "active duty wartime or campaign badge veteran" means a veteran who served on active duty in the U.S. military, ground, naval or air service during a war, or in a campaign or expedition for which a campaign badge has been authorized under the laws administered by the Department of Defense.

An "Armed forces service medal veteran" means a veteran who, while serving on active duty in the U.S. military, ground, naval or air service, participated in a United States military operation for which an Armed Forces service medal was awarded pursuant to Executive Order 12985.

Voluntary Self-Identification of Disability

Form CC-305
Page 1 of 1
OMB Control Number 1250-0005
Expires 04/30/2026

Why are you being asked to complete this form?

We are a federal contractor or subcontractor. The law requires us to provide equal employment opportunity to qualified people with disabilities. We have a goal of having at least 7% of our workers as people with disabilities. The law says we must measure our progress towards this goal. To do this, we must ask applicants and employees if they have a disability or have ever had one. People can become disabled, so we need to ask this question at least every five years.

Completing this form is voluntary, and we hope that you will choose to do so. Your answer is confidential. No one who makes hiring decisions will see it. Your decision to complete the form and your answer will not harm you in any way. If you want to learn more about the law or this form, visit the U.S. Department of Labor’s Office of Federal Contract Compliance Programs (OFCCP) website at www.dol.gov/ofccp.

How do you know if you have a disability?

A disability is a condition that substantially limits one or more of your “major life activities.” If you have or have ever had such a condition, you are a person with a disability. Disabilities include, but are not limited to:

  • Alcohol or other substance use disorder (not currently using drugs illegally)
  • Autoimmune disorder, for example, lupus, fibromyalgia, rheumatoid arthritis, HIV/AIDS
  • Blind or low vision
  • Cancer (past or present)
  • Cardiovascular or heart disease
  • Celiac disease
  • Cerebral palsy
  • Deaf or serious difficulty hearing
  • Diabetes
  • Disfigurement, for example, disfigurement caused by burns, wounds, accidents, or congenital disorders
  • Epilepsy or other seizure disorder
  • Gastrointestinal disorders, for example, Crohn's Disease, irritable bowel syndrome
  • Intellectual or developmental disability
  • Mental health conditions, for example, depression, bipolar disorder, anxiety disorder, schizophrenia, PTSD
  • Missing limbs or partially missing limbs
  • Mobility impairment, benefiting from the use of a wheelchair, scooter, walker, leg brace(s) and/or other supports
  • Nervous system condition, for example, migraine headaches, Parkinson’s disease, multiple sclerosis (MS)
  • Neurodivergence, for example, attention-deficit/hyperactivity disorder (ADHD), autism spectrum disorder, dyslexia, dyspraxia, other learning disabilities
  • Partial or complete paralysis (any cause)
  • Pulmonary or respiratory conditions, for example, tuberculosis, asthma, emphysema
  • Short stature (dwarfism)
  • Traumatic brain injury

PUBLIC BURDEN STATEMENT: According to the Paperwork Reduction Act of 1995 no persons are required to respond to a collection of information unless such collection displays a valid OMB control number. This survey should take about 5 minutes to complete.

Our system has flagged this application as potentially being associated with bot traffic. Please turn off any VPNs, clear your browser cache and cookies, or try submitting your application in a different browser. If this issue persists, please reach out to our support team via our help center.
Please complete the reCAPTCHA above.