At a Glance
- Tasks: Build scalable iOS solutions and enhance developer efficiency at Goodnotes.
- Company: Join a visionary tech startup transforming digital note-taking with AI.
- Benefits: Enjoy remote work, flexible hours, medical insurance, and personal development budget.
- Why this job: Make a real impact on millions of users while collaborating with a passionate team.
- Qualifications: Expertise in Swift and problem-solving skills are essential.
- Other info: Experience excellent career growth and a supportive work culture.
The predicted salary is between 36000 - 60000 ÂŁ per year.
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:
The Apple Developer Experience team sits within the Foundation Group. At Goodnotes, our Foundation teams ensure that the app experience is seamless, responsive, and resilient, no matter how complex the product becomes. As a Senior iOS Engineer in the Apple DevEx team, you will help your fellow iOS Engineers be more efficient. You'll collaborate with other teams to ensure you understand their pain points and nuances. You will advise and drive architectural improvements that help our app scale with our growth. Join us in helping Goodnotes ship more, better and higher quality code to maximise the impact on our users.
Responsibilities
- Build mission‑critical services used by tens of millions of users.
- Architect and design scalable solutions that are easy to maintain to allow the development of exciting features and support more users.
- Implement elegant solutions with clean code.
- Help solve the most critical developer problems with a large, offline first, old codebase: modularization, build times, and a fast and reliable CI/CD.
- Define and drive the completion of new initiatives and features by removing blockers for the team.
- Continuously improve the development practices through research, automation, documentation and testing.
- Share your knowledge and experience with the rest of the team.
Qualifications
- Expertise in Swift programming.
- A strong understanding of computer science fundamentals and an enjoyment of solving algorithm and data structure puzzles.
- Excellent problem‑solving, communication, and storytelling skills.
- A love of software craftsmanship.
- Strong sense of the best tools for any task.
- High sense of autonomy.
- Knowledge of the best AI tools that can assist with the task at hand.
- Proven experience working on sizable and complex codebases.
- Big plus if you have experience cross‑compiling codebase on different mobile platforms.
The stack
- Programming Language: The vast majority of our code is written in Swift.
- CI / CD: We use CircleCI although we’re slowly migrating to TeamCity.
- 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 & 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.
- AI literacy interview: A short conversation with an AI Champion on your understanding and use of AI tools.
- 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 – Meeting with members of the Goodnotes Team to answer questions relating to take ownership AND build great things.
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.
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.
Senior iOS Engineer - DevEx employer: Goodnotes
Contact Detail:
Goodnotes Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Senior iOS Engineer - DevEx
✨Tip Number 1
Network like a pro! Reach out to current or former employees at Goodnotes on LinkedIn. A friendly chat can give you insider info and maybe even a referral, which can really boost your chances.
✨Tip Number 2
Prepare for the technical screening by brushing up on your Swift skills. Practice coding challenges on platforms like HackerRank to get comfortable with the format and types of questions you might face.
✨Tip Number 3
Show off your passion for AI tools during the interview process. Be ready to discuss how you've used them in past projects and how they can enhance productivity and creativity in your work.
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you’re genuinely interested in joining the Goodnotes team.
We think you need these skills to ace Senior iOS Engineer - DevEx
Some tips for your application 🫡
Show Your Passion for Coding: When you're writing your application, let your love for coding shine through! Share specific examples of projects you've worked on, especially those that highlight your skills in Swift and problem-solving. We want to see your enthusiasm for software craftsmanship!
Tailor Your Application: Make sure to customise your application to reflect the values and mission of Goodnotes. Mention how you align with our vision of merging human creativity with AI. This shows us that you understand what we're about and are genuinely interested in joining our team.
Be Clear and Concise: Keep your application straightforward and to the point. Use clear language and avoid jargon unless it's relevant. We appreciate a well-structured application that makes it easy for us to see your qualifications and experience at a glance.
Apply Through Our Website: Don't forget to submit your application through our website! It’s the best way for us to receive your details and ensures you’re considered for the role. Plus, it helps us keep everything organised as we review applications.
How to prepare for a job interview at Goodnotes
✨Know Your Code Inside Out
As a Senior iOS Engineer, you’ll want to showcase your expertise in Swift and your understanding of complex codebases. Brush up on your coding skills and be ready to discuss specific challenges you've faced and how you solved them. Practising coding problems related to algorithms and data structures can really help you shine during the technical screening.
✨Understand Goodnotes' Vision
Familiarise yourself with Goodnotes' mission to merge human creativity with AI capabilities. Be prepared to discuss how your experience aligns with their values, such as building great things and being user-obsessed. Showing that you resonate with their vision will demonstrate your enthusiasm for the role.
✨Prepare for Live Coding
During the onsite live coding interview, you'll need to think on your feet. Practice coding in a timed environment to simulate the pressure. Focus on writing clean, maintainable code and be ready to explain your thought process as you work through problems. This will show your problem-solving skills and your love for software craftsmanship.
✨Showcase Your AI Knowledge
Since Goodnotes is keen on AI integration, be ready to discuss any AI tools you’ve used in your projects. Highlight how these tools have improved your workflow or the end product. This will not only demonstrate your technical skills but also your ability to innovate and adapt to new technologies.