Senior Software Engineer, Web Cross-Platform

at Goodnotes
  • Remote - China, United Kingdom

Remote

Software Development

Senior

Job description

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:

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. The team is building a Marketplace for tens of millions of active users to purchase digital stationery and learning materials, including notebook templates, stickers, and exam prep resources. Additionally, we manage the infrastructure that supports Goodnotes’ in-app purchases and subscription services.

You will use a broad and modern tech stack with:

  • Programming Language: We use TypeScript for Frontend. Our backend services are written in TypeScript and Kotlin.
  • Frameworks and Libraries: We use React/Redux and WebAssembly.
  • Monitoring and Logging: We are currently using 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: Most of our infrastructure is written with Terraform.
  • 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:

  • Bring our core iOS App to cross platforms i.e. Web, Android and Windows systems, based on scope and requirements, using cross-platform SDKs.
  • Rapidly build prototypes/simulations from mockups that can be directly implemented
  • Create decoupled, interactive web/mobile UIs using JavaScript Frameworks such as React/Redux and new technologies like WebAssembly
  • Improve rendering performance and memory optimizations to create a performant UX
  • Perform cross-browser/device testing and optimisation
  • Support, maintenance and ongoing development for existing applications and projects
  • Unit-test code for robustness, including edge cases, usability, and general reliability
  • Continuously discover, evaluate, and implement new technologies to maximize development efficiency
  • Shipping Progressive Web Apps (PWA) to various platforms utilising latest technologies

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

  • Experience building modern web applications using libraries and frameworks like: React/Redux
  • Expertise with TypeScript and Node.js
  • At least 8 years of related working experience, you’ve made mistakes and learned from it
  • Experience building cross-platform SDKs for shipping one or more non-trivial apps on respective app stores
  • Expertise in cloud storage, deployment and computing. We use AWS but we’re open to other platform experience
  • Can ship great quality products efficiently, you follow best practices (CI/CD, automated testing, version control)
  • Strong fundamentals in Computer Science, you know how things work under the hood
  • Excellent problem-solving, communication, and story-telling skills
  • Experience building PWA with offline-capabilities, bonus if you have used WebAssembly (WASM)

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.
  • 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.
  • 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, 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 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.

Share this job:
Please let Goodnotes know you found this job on Remote First Jobs 🙏

Benefits of using Remote First Jobs

Discover Hidden Jobs

Unique jobs you won't find on other job boards.

Advanced Filters

Filter by category, benefits, seniority, and more.

Priority Job Alerts

Get timely alerts for new job openings every day.

Manage Your Job Hunt

Save jobs you like and keep a simple list of your applications.

Search remote, work from home, 100% online jobs

We help you connect with top remote-first companies.

Search jobs

Hiring remote talent? Post a job

Frequently Asked Questions

What makes Remote First Jobs different from other job boards?

Unlike other job boards that only show jobs from companies that pay to post, we actively scan over 20,000 companies to find remote positions. This means you get access to thousands more jobs, including ones from companies that don't typically post on traditional job boards. Our platform is dedicated to fully remote positions, focusing on companies that have adopted remote work as their standard practice.

How often are new jobs added?

New jobs are constantly being added as our system checks company websites every day. We process thousands of jobs daily to ensure you have access to the most up-to-date remote job listings. Our algorithms scan over 20,000 different sources daily, adding jobs to the board the moment they appear.

Can I trust the job listings on Remote First Jobs?

Yes! We verify all job listings and companies to ensure they're legitimate. Our system automatically filters out spam, junk, and fake jobs to ensure you only see real remote opportunities.

Can I suggest companies to be added to your search?

Yes! We're always looking to expand our listings and appreciate suggestions from our community. If you know of companies offering remote positions that should be included in our search, please let us know. We actively work to increase our coverage of remote job opportunities.

How do I apply for jobs?

When you find a job you're interested in, simply click the 'Apply Now' button on the job listing. This will take you directly to the company's application page. We kindly ask you to mention that you found the position through Remote First Jobs when applying, as it helps us grow and improve our service 🙏

Apply