Software Developer/ Engineer/ Architect
Platform Senior Staff Software Engineer
- Udemy
- Dublin, Ireland
- October 28, 2021
Key Responsibilities:
- Design, develop, test, and release libraries, components, and tools for creating and maintaining best in class server-side software at Udemy.
- Identify and evaluate new technologies that improve performance, maintainability and robustness of our backend software.
- Plan, organize, and complete work within agile sprints. Communicate effectively on progress towards meeting expectations.
- Contribute in code reviews, design discussions, and develop features and solutions that scale.
- Serve as a technical lead for various projects/tasks as needed.
- Use best software development practices and processes to coach and mentor junior engineers to become proficient developers.
- Evaluate and introduce relevant new technologies where appropriate.
- Contribute to a team culture that values openness, inclusiveness, quality, robustness, and scalability while fostering innovation.
Preferred but not required:
- Familiarity with containerization technologies (docker, lxc, etc.).
- Familiarity with container orchestration technologies (Kubernetes, Marathon, Nomad, etc.).
- Experience working with cloud computing services providers (AWS, Google cloud platform, Azure, etc.).
- Experience with Spring Boot Microservices
- Familiarity with monitoring and alerting tools (DataDog, HoneyComb etc)
Qualifications:
- Minimum six (6) years of experience as a backend software engineer.
- Ability to learn and work with existing code bases.
- Strong technical communication skills.
- Knowledge of Object Oriented software design patterns and computer science fundamentals (e.g. data structures, algorithms) Web application development using modern frameworks.
- Understanding of Web Framework ORMs (e.g. Django, Rails, etc.).
- Minimum 2 years of experience with Python or other dynamic languages such as Ruby, PHP, etc.
- Minimum 2 years of experience with Java, Kotlin or other strongly typed language.
- Experience with relational DB (e.g. MySQL) including development of complex SQL queries.
- Experience with microservice development and communications using gRPC.
- Experience developing software that runs on Linux and/or Unix servers.
- Experience working with Real-time messaging and NoSQL infrastructures: Redis, RabbitMQ, Celery, Kafka, etc.
- Experience with Testing methods, including unit and integration tests.