Location
Remote
Job Type
full-time
Work Format
🌍 Remote Worldwide
Salary
$146,000 - $215,000
Posted
September 27, 2026

Job Description

ClassDojo's goal is to give every child on Earth an education they love.

We started by building a powerful network for communication. ClassDojo’s flagship app is the #1 communication app connecting K-12 teachers, children, and families globally. Teachers use it to share what’s happening throughout the day through photos, videos, and messages that make parents feel like they’re there. It’s actively used in over 95% of US schools, reaching over 45 million children in 180 countries, with a team of just around 200 people [1]. We are now beginning to use this network to give kids the best learning experiences in the world, far beyond those a standard school can provide.

We hire for talent density. Our team comprises the most talented, entrepreneurial, and innovative teammates from around the world, with experience in education and large scale consumer internet companies, including Instagram, Netflix, Dropbox, Stripe, Uber, Y Combinator, and more. We’re building a company where the most talented people want to work. We believe you’ll do the best work of your life here—and you’ll pioneer the future of education, too.

As a full-stack engineer at ClassDojo, you'll help build the systems that will support our rapid growth. You’ll work on production code from day one in a pair programming environment, deploy often, move quickly, and have your work used by millions of students, teachers, and parents around the world every day. In addition, you’ll help us further develop our high-quality engineering culture, one that values rapid iteration, collaboration, and best practices. Our code is heavily tested and deployed daily, and we’re serious about building a world-class engineering team. 

What you’ll do:

Ship new and improved features to end users in collaboration with your team

  • Write, debug, and optimize new and existing code for our web apps, API, databases, infrastructure with automated tests and monitoring

  • Deliver code to production and features to users frequently and incrementally

  • Collaborate with your team through pair programming, mob programming, code reviews, and design sessions

Contribute to cross-team technical improvements and investments

  • Seek out opportunities to provide shared value through improvements of our common systems, tooling, and practices

  • Support and improve our build and delivery pipelines

  • Contribute to technical design and architecture conversations with your expertise and perspective

  • Being curious and proactive about new tools, products, and approaches for AI powered engineering, evaluating how we can responsibly improve developer velocity, reliability, and quality.

Contribute to better practice, processes and teamwork 

  • Help to unblock teammates as well as other teams through hands-on work and guidance.

  • Break work down so we can deliver value to users incrementally.

  • Help grow other engineers into more senior engineers.

  • Systematically improve the quality of our product and process.

  • Encourage collaboration and psychological safety.

  • Know and spread awareness about the larger business context of what teams and individuals are working on. 

You will be a match if:

  • You have 8-10+ years of professional software experience  

  • You have worked at companies at various sizes and stages  - from well known larger tech players all the way to startup stage (whether as a founder/co-founder or in a high growth stretch)

  • You have delivered impactful user and business outcomes 

  • You have driven technical excellence through improvements to process, practices, and tools (e.g. experience with test automation, CI/CD, and DevOps practices)

  • You’re open to evolving with the role over time, including adapting engineering and product development practices as AI-powered products and workflows continue to become a larger part of our day to day.

  • You have strong communication. You clearly translate business requirements into technical solutions.

  • You're excited to get things done, in a fast-paced environment

  • You have an ownership mindset: you are comfortable with both responsibility and accountability

  • You're thoughtful about creating and maintaining a world-class engineering culture

  • You work well in teams and enjoy collaborating with engineers, designers and product teams

  • You enjoy working in a pair programming environment

  • You are passionate about education and care about having impact on tens of millions of kids' lives with your work

  • You live and work in the Americas timezones

Bonus:

  • You’ve used Node and/or React at scale

  • You've worked with MongoDB or MySQL

  • You have DevOps experience, especially on AWS

[1] Some more context:

(If you are on LinkedIn, you will not be able to access the hyperlinks below. Once you click apply, you will be directed to our career website (if you are not on there already) and will be able to access the hyperlinks)

  • How ClassDojo Connects Parents, Students, and Teachers 

  • “Whats New on ClassDojo 2023”

  • TechCrunch Article: Second Act comes with First Profits

Click here if you're interested in learning more about what we've been up to.

We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status. In accordance with the San Francisco Fair Chance Ordinance, we will consider for employment qualified applicants with arrest and conviction records. We are happy to accommodate any disabilities or special needs. We are a distributed company, so we hire regardless of location, as long as you are willing to have significant hours overlap with one of the Americas time zones.

ClassDojo takes a number of factors into consideration when determining compensation, including geographic location, experience, and skillset. Salary ranges (United States):

CA, WA, NY, NJ, CT states: $171,500 - $250,000 (USD)

All other states in the US: $146,000 - $215,000 (USD)

#LI-Remote

🎯 Who is this job for?

This role is suitable for a Senior Full-Stack Engineer with 8–10+ years of professional experience, including work across startups and larger technology companies, and a strong record of delivering impactful outcomes.

The candidate should have expertise in web applications, APIs, databases, automated testing, monitoring, CI/CD, DevOps, and preferably Node.js, React, MongoDB or MySQL, and AWS, along with strong communication, ownership, and collaboration skills.

They should be familiar with designing, building, testing, optimizing, and frequently deploying production features; improving infrastructure and engineering practices; pair programming and code reviews; mentoring engineers; and contributing to technical architecture and AI-enabled development initiatives.

💬 Potential Interview Questions

How would you design a scalable Node.js API for millions of teachers, students, and parents?

I would use stateless services, clear resource boundaries, input validation, authentication and authorization, caching where appropriate, and observability from the start. I would also design for horizontal scaling, graceful degradation, rate limiting, and backward-compatible API evolution.

How would you optimize a React application that is experiencing slow rendering and poor user-perceived performance?

I would profile the application first, then address unnecessary re-renders, large component trees, expensive computations, and inefficient state management. Techniques could include memoization, code splitting, virtualization, optimized network requests, and careful handling of loading and error states.

What considerations are important when modeling communication data in MongoDB or MySQL?

I would model around the most common access patterns, such as retrieving conversations, messages, media, and user relationships. I would choose normalization or denormalization deliberately, define appropriate indexes, plan pagination, and consider retention, consistency, and migration requirements.

How would you implement reliable pagination for a high-volume message feed?

For large and frequently changing datasets, I would prefer cursor-based pagination using a stable, indexed ordering such as creation time plus a unique identifier. This avoids the performance and consistency problems that offset pagination can cause when new records are inserted.

How would you design a CI/CD pipeline for frequent, safe production deployments?

The pipeline should run unit, integration, end-to-end, linting, and security checks before deployment, with reproducible builds and environment-specific configuration. I would use small releases, automated migrations, feature flags, canary or phased rollouts, monitoring, and a reliable rollback strategy.

What testing strategy would you use for a full-stack feature spanning React, APIs, and databases?

I would combine focused unit tests, API and database integration tests, and a smaller set of critical end-to-end tests. Tests should validate important user workflows and failure modes while remaining deterministic, fast enough for continuous delivery, and supported by realistic test data.

How would you secure access to data shared between teachers, families, and students?

I would enforce server-side authorization based on identity, role, organization, and resource relationships rather than relying on client-side checks. I would also validate inputs, protect sensitive data, use secure session or token handling, audit important actions, and apply least-privilege access throughout the system.

How would you monitor and troubleshoot a production incident in an AWS-hosted application?

I would use metrics, structured logs, distributed traces, deployment information, and alert history to identify the failing component and user impact. After mitigation, I would document the root cause, improve instrumentation or safeguards, and create follow-up actions to prevent recurrence.

How would you safely introduce an AI-powered engineering tool into a production development workflow?

I would begin with low-risk use cases such as test generation, documentation, and code suggestions, while requiring human review and protecting confidential data. Success should be measured through quality, security, reliability, and developer-velocity metrics rather than adoption alone.

How would you break down a large cross-functional feature so that value can be delivered incrementally?

I would identify the smallest useful vertical slice, clarify measurable outcomes, and separate foundational work from optional enhancements. I would use feature flags, backward-compatible contracts, incremental migrations, and frequent feedback from product, design, and users to reduce delivery risk.

📋 Job Summary

ClassDojo is a mission-driven education technology company reaching more than 45 million children worldwide, and is hiring a Senior Full-Stack Engineer to build high-impact learning and communication products. You’ll ship and optimize web applications, APIs, databases, infrastructure, automated tests, CI/CD pipelines, and AI-powered engineering practices while collaborating through pair programming and design sessions. This is a fully remote, full-time role for candidates working in the Americas time zones, using a stack that includes Node.js, React, MongoDB or MySQL, and AWS; salary ranges from $146,000–$215,000 in most US states and $171,500–$250,000 in CA, WA, NY, NJ, and CT. Apply to help shape the future of education, work with an exceptional distributed team, and make a daily impact on millions of students, teachers, and families.

Required Skills

Node.js React MongoDB MySQL AWS APIs Unit Testing

Never miss a JavaScript opportunity

Subscribe to get similar jobs and weekly insights delivered to your inbox

Hiring JavaScript developers?

Post your job to 8,800+ registered developers. Starting free.

See Pricing

Related jobs

Remote

Front End Developer

Partisia Blockchain Applications

Full-time
Barcelona, Spain

Software Engineer

Edpuzzle

Full-time

Is this your listing? Claim or request removal