About us
At Udemy, we’re on a mission to transform lives through learning. Through our intelligent skills platform and a global community of instructors, we’ve helped nearly 80 million learners and more than 17,000 organizations achieve their goals. Come join us in ensuring everyone, everywhere has access to the skills they need to unlock their potential and create possibilities for themselves and others. Learn more about us on our.
Where we work
Udemy is a global company headquartered in San Francisco, with additional U.S. offices in Denver and Austin, and international hubs in Australia, India, Ireland, Mexico, and Türkiye. This is an in-office position, requiring three days a week in the office (Tuesday, Wednesday, Thursday) and flexibility on Mondays and Fridays .
About This Role
The Interaction Insights team at Udemy is focused on creating scalable, data-rich systems that support user interaction experiences across our platform. We're looking for a Software Engineer with strong backend or full-stack experience to join our team and help shape the tools, services, and infrastructure that drive key features at Udemy. You’ll work alongside experienced engineers, contribute to production systems, and have the opportunity to grow within a collaborative and supportive environment. This hybrid role requires two days a week in one of our Udemy office hubs.
What You’ll Be Doing
- Contribute to the design, development, and deployment of backend and full-stack features using technologies like Kotlin, Spring Boot, Python, Django, React, Kafka, Redis, and MySQL.
- Participate in building scalable microservices and RESTful APIs that support critical Udemy features.
- Write clean, maintainable, and well-tested code with a focus on performance and scalability.
- Collaborate with cross-functional teams during sprint planning, code reviews, and design discussions.
- Help monitor and troubleshoot services in production and contribute to continuous improvement efforts.
- Support system documentation and share knowledge with the team as we evolve our services and architecture.
- Learn and explore new technologies that can improve team velocity or system performance.
About your skills
Strong Communication Skills : You excel in articulating complex technical concepts clearly and concisely to both technical and non-technical stakeholders, fostering a collaborative and transparent work environment..Adaptability and Learning Agility : You thrive in dynamic environments, quickly adapting to new technologies, methodologies, and challenges. Your eagerness to learn and ability to pivot effectively contribute to the team's success in a rapidly evolving industry.Problem-Solving and Critical Thinking : You approach challenges with a logical and analytical mindset, systematically analyzing problems, identifying root causes, and devising innovative solutions that address both short-term needs and long-term objectives.What you’ll have
Around 5 years of professional software engineering experience, with backend or full-stack focus.Proficiency in at least one object-oriented language (e.g., Java, Kotlin, Python).Experience working on web applications or APIs, and understanding of HTTP, REST, and modern backend patterns.Exposure to databases (SQL or NoSQL), caching systems (e.g., Redis), and cloud environments (e.g., AWS).Familiarity with testing practices such as unit and integration testing.Experience working within a collaborative team using agile methodology.Nice to Have
Experience with frontend frameworks (e.g., React or Next.js).Exposure to microservice architecture and containerization tools like Docker or Kubernetes.Interest in event-driven systems or messaging platforms like Kafka or RabbitMQ.A desire to learn and grow within a culture that values quality, curiosity, and teamworkLI-ST5
We understand that not everyone will match each of the above qualifications. However, we also realize that everyone has unique experiences that can add value to our company. Even if you think your background might not perfectly align, we'd love to hear from you!