Software Developer/ Engineer/ Architect

Principal Engineer - Enterprise Experience

About Udemy

Udemy is the world’s largest education platform with more than 30 million monthly visitors. Through our Consumer and Enterprise businesses, Udemy creates new possibilities for people and organizations everywhere by connecting them to the knowledge and skills they need to succeed in a changing world. The Udemy consumer marketplace offers thousands of up-to-date courses in dozens of languages and provides the tools learners and instructors need to achieve their goals and reach their full potential.

For companies, Udemy Business (UB) offers an employee training and development platform with subscription access to thousands of courses, learning analytics, as well as the ability to host and distribute their own content. Our enterprise platform is among the fastest growing SaaS businesses in the world. UB has more than 10,000 customers and serves the majority of the Fortune 100. 

We are proud to be recognized for our world class employee experience:
Business Insider SF: Best Places to Work Bay Area
Built In Colorado: Best Places to Work
Best Workplaces (Great Place to Work List): #1 in Turkey
Certified Best Place to Work: Dublin
Fortune: Change the World Company

What’s the opportunity?

Udemy Business helps global companies stay competitive in the digital transformation of the workplace by offering fresh, personalized, and on-demand learning content. Our business offering leverages the marketplace catalogue of over 130,000 courses serving upward of 40M students. We are looking for a full-stack engineer to help us build out and scale up the best workplace learning experience in the industry.

As a Principal Engineer on the Enterprise Portfolio you will be working with multiple teams such as Account Management, License Management and Ecosystems as a technical lead to design, implement and maintain scalable solutions in areas such as license, user data and group management, GDPR, access management including SSO/SCIM and log-in/sign-up flows. These features are core to our Udemy Business offering and our goal is to achieve Enterprise Grade level of quality: a seamless experience at scale.

You will be innovating by introducing new technologies and managing their adoption and also setting standards and best practices for excellence in engineering. You will regularly mentor your fellow engineers because that is the best way to help the organization grow with higher quality.

How we work

Our teams have a high degree of autonomy to select the projects they work on. The teams collectively decide on key themes. Independent pods (teams) have the flexibility to make their own decisions and work autonomously. At the end of each month, teams present their complete or in-progress work to the wider portfolio.

While engineers collaborate closely with Product and Design, they also put forward and drive their own initiatives that align with their team’s long-term strategy and many times even Udemy on the whole.  For a peek into what the rest of our engineering team at Udemy has been working on, read our engineering blog - https://medium.com/udemy-engineering.

Where we work

Over the last two years, we have let teams and individuals adapt and figure out how they can be most effective in a remote-first world. As offices in Dublin reopen, we have adopted a hybrid model where those needing the office are welcome to do so and teams are encouraged to align on what works best for them.

What’s expected of me?

Our team members have a wide variety of backgrounds and we strongly believe that diversity, open-mindedness, and good communication yield the best results. We work collaboratively and cross-functionally, taking ownership of doing the right things and getting them done. We are looking for someone to join the team who has demonstrable experience in some of the areas listed below and a desire to learn and master anything else that comes their way - we are a learning company after all!

 

Nice to have

  • Working on service-oriented, event-driven architecture
  • Previous experience with SAML/SCIM and modern auth standards such as OAuth
  • Expertise in front-end development technologies and frameworks
  • Experience with B2B SaaS applications and two-sided marketplaces

Key Responsibilities

  • Act as a technical lead for various projects as needed including setting technical direction
  • Support your teams to deliver extraordinary output
  • Identify, evaluate and introduce new technologies that improve performance, scalability and robustness of our system architecture
  • Devise solutions to performance and scalability challenges as our customer data set continues to grow
  • Design, specify and implement new features and services
  • Participate in code reviews making sure that our code is well designed, tested, robust, secure, performant and readable
  • Own the architectural vision for multiple product areas
  • Own the quality of our code and engineering excellence including ruthless focus on clean code
  • Initiate, lead and execute large-scale refactorings and improvements to our code and architecture 
  • Mentor junior and senior engineers
  • Nurture good working relationships with other engineering teams and non-engineering functions within Udemy
  • Work closely with product, design and other team partners to ensure our products effectively solve customer problems and meet business objectives

Core competencies that will help you succeed in this role

  • Strong object-oriented programming skills and expert level software development skills in at least one programming language (ideally Python/Kotlin)
  • Experience with web application development frameworks such as, but not limited to, Spring Boot and Django
  • Experience with designing scalable systems with an emphasis on microservices and event-driven architecture (preferably Kafka)
  • Experience migrating monoliths to microservices
  • Experience designing scalable, secure and performant APIs (REST/GraphQL/gRPC)
  • Strong experience and deep understanding of databases, both relational and noSQL