We believe anyone can build the life they imagine through online learning. Today, more than 17 million students around the world are advancing their careers and passions by mastering new skills on Udemy. Through our global marketplace, we connect lifelong learners around the world to the largest selection of online courses created by expert instructors, and we’re just getting started.
We’re a close-knit bunch that enjoys problem-solving and collaboration, and we share a serious commitment to delivering the best possible learning and teaching experiences. Udemy’s culture encourages innovation, creativity, passion, and teamwork. We also celebrate our milestones and support each other every day.
Founded in 2010, Udemy is privately owned and headquartered in San Francisco’s SOMA neighborhood with offices in Dublin, Ireland, and Ankara, Turkey.
Engineers in Payments team are dedicated to implement strategic billing and payment operations to support hundreds of transactions per minute globally. Our system supports hundreds of different payment methods globally, state of the art integration capabilities with top payment vendors (Stripe, PayPal, Adyen), full-stack responsible from all the purchase flow, scaled to payout thousands of instructors monthly, and always refactored to lead the way. The team plays a mission critical role in Udemy to ensure all the monetization capabilities are highly resilient and always provide the high quality experience.
As a senior member of the team, you must excel at working in a highly collaborative, cross-functional environment, which requires collaboration with product managers, designers and engineers to identify opportunities and implement solutions.
You have self-motivation to relentlessly refactor existing systems to make them more robust, maintainable, and scalable while fostering innovation and playing a leadership role to shape the next generation payments platform.
You can function as a technical lead for various projects/tasks as needed. This may involve some project planning, resource planning, and deployment planning in addition to your software engineering responsibilities.
You can mentor junior engineers to become proficient developers using best software development practices and processes.
You know the trade-offs and have the experience to build robust and high scale architectures.
You have deep sense of quality, and sharp engineering skills with strong CS fundamentals.
You are self-driven, own your services by all dimensions and intrinsically have a desire to get things done.
You act agile by nature, positive, able to see the “the art of possible”, and balance idealism and pragmatism.
You are creative and not afraid to step outside of your comfort zone.
You lead by example and contribute to a team culture that values openness, quality, robustness, and scalability while fostering innovation.
You are team-oriented, friendly, reliable, humble, receptive to feedback, and you gain satisfaction from helping others.
Mastery over at least one programming language (e.g. .Net/C#, Python and/or Java)
Well versed in HTTP and web application stack including modern front-end/back-end technologies.
Deep knowledge of concurrency, resiliency, and caching.
Proven experience with ORMs (e.g. Django) and RDBMS (e.g. MySQL) including development of complex SQL queries.
Building and consuming internal/external APIs (including, but not limited to REST).
Testing methods and practices.
Experience with following is a plus:
Real-time messaging and NoSQL infrastructures: Redis, RabbitMQ
Scalable data processing techniques: Kafka, Spark, ElasticSearch, Celery