About the job
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
Build great things
Take ownership
Win like a sports team
Learn and grow fast
Share our passion
About the team:
You will be part of a distributed team across Europe and China, with shared time for collaborative activities such as planning, retros, stand-ups, and brainstorming sessions. The team will be responsible for the requirements of tens of millions of active users in China using Goodnotes. That will include building secure cloud infrastructure to store user data, to integrate with local services to log in or pay for digital stationery and learning material that are sold on the Marketplace.
You will use a broad and modern tech stack with:
- Programming Language: Our services are either written in TypeScript or in Kotlin.
- Monitoring and Logging: We use Datadog for monitoring and logging. Metrics are collected across our agents, taken from the logs using metric filters, and updated directly from lambda function or the application.
- Infrastructure-as-Code: Our infrastructure is written with Terraform and CDK
- CI/CD: We currently use GitHub Actions for CI, and ArgoCD for CD.
- Deployments: We have multiple EKS clusters set up either for Blue/Green rollouts or dedicated feature sets. We are currently updating these clusters using ArgoCD and Atlantis.
- Our main databases are MongoDB and a self-managed CockroachDB cluster running on EKS.
- We believe in automating ourselves out of our jobs.
About the role:
This is the role for you, if you’re excited to work on the things listed below:
- Create cloud-secure and future-proofing infrastructure with either Terraform or CDK
- Build mission-critical services used by tens of millions of users.
- Design scalable architectures that are easy to maintain and extend.
- Implement elegant solutions with clean code.
- Enable communication with the different functional groups in both Europe and China
- 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
The skills you will need to be successful in the above:
- Proficient in TypeScript and familiarity with at least one JVM programming language (e.g. Kotlin, Java, Scala)
- Expertise in cloud computing. We use AWS but we’re open to other platform experience
- Enjoy solving algorithms and data structure puzzles
- Have led the development of complex systems from inception to millions of users
- Robust software engineering practices, testing and automation have no secrets for you
- Excellent problem-solving and story-telling skills
- A love of software craftsmanship, have a strong desire of self improvement through side projects and sharing
- Good communication skills in both Chinese and English
At Goodnotes, we want to build a team as diverse as our user base. Even if you don’t meet all the above requirements, you may still be a great fit for the role, so please consider still applying. If you align with our values, are passionate about our product and what you do, we would love to hear from you!
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.
- Take-home Assignment: A short online coding skills test with Hackerrank
- 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 supporting you throughout your career at Goodnotes.
- Values interview – Meeting with members of the Goodnotes Team to answer questions relating to taking ownership AND building great things
What’s in it for you:
- Remote, flexible working
- 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 year
- Company wide annual offsite
- Fantastic maternity/ paternity packages and allowances