Software Engineer (Madrid)

Develop the next-generation education technology that improves how millions learn.

Duolingo software engineers develop next-generation education technology that changes how over 170 million people around the world learn. We’re looking for engineers who bring knowledge and fresh ideas from all areas in computer science, including natural language processing, machine learning, large-scale systems design, and iOS & Android mobile app development.

As a software engineer, you will work on a specific project critical to Duolingo’s needs, with opportunities to switch teams and projects as our fast-paced startup grows and evolves.
We need our engineers to be versatile, display leadership qualities and be enthusiastic to tackle new problems across the full-stack as we continue to innovate.


  • Collaborate on software projects with other engineers and/or designers, language learning experts, etc.
  • Develop, release, and maintain software code to improve Duolingo’s products.
  • Manage individual project priorities, deadlines and deliverables.


  • Professional fluency in English (Spanish/German are not required).
  • A Bachelor’s degree in Computer Science or related technical field.
  • A solid foundation in computer science with strong competencies in data structures, algorithms, and software design.
  • Demonstrable experience programming for Android (native), iOS (native), the web, or on the backend.
  • Legally authorized/eligible to work in the EU.
  • Strong communicational and interpersonal skills.

Exceptional candidates will have:

  • 5 years of experience programming for one of the following: Android (native), iOS (native), the web, or the backend (Python / Scala).

Meet Some of Duolingo's Employees

Antonia S.

Senior Software Engineer

Antonia is a full-stack software engineer who focuses on building out Duolingo's Tinycards product—a customizable flash card app that helps students memorize anything.

Connor B.

Senior Software Engineer

Connor’s official title is Software Engineer—but his role extends beyonds just writing code. He also builds specs, makes design mock-ups, and organizes meetings to talk about the Duolingo product.

Back to top