Senior iOS Engineer
Company
Goodnotes
Location
Malaysia
Type
Full Time
Job Description
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
Date Posted
08/30/2024
Views
0
Similar Jobs
Senior IT Analyst, SOX - ELC Beauty
Views in the last 30 days - 0
The Estée Lauder Companies a global leader in prestige beauty is seeking an IT SOX Compliance professional to join their Enterprise Cybersecurity Ris...
View DetailsSenior/Managing Consultant, Services Business Development - Mastercard
Views in the last 30 days - 0
Mastercard is seeking a SeniorManaging Consultant for Services Business Development The role involves generating and maintaining Data Services revenu...
View DetailsSenior Python Django Developer - EPAM Systems
Views in the last 30 days - 0
EPAM is seeking a Python Django Developer to join their team and contribute to the development and optimization of a custom CMS and various company we...
View DetailsCollateral Management - Analyst/Associate - JPMorgan Chase
Views in the last 30 days - 0
The job posting is for an AnalystAssociate position in the Collateral Management Operations team at JP Morgan The role involves managing collateral fo...
View DetailsComponent Engineer - Jabil
Views in the last 30 days - 0
Jabil a global leader in engineering manufacturing and supply chain solutions seeks a technical focal point to identify and source newalternate compon...
View DetailsProcess Engineering Manager - Flex
Views in the last 30 days - 0
Flex a diversified manufacturing partner seeks a Senior Automation Development Engineer in Prai Penang The role involves designing engineering and mod...
View Details