Software Engineer

Twilio
Summary
Join Twilio as a Staff Software Engineer and contribute to building and maintaining mission-critical services in our core messaging flow. Work with product managers, architects, and engineers to deliver messaging product features. Focus on building scalable, reliable, and low-latency services for one of the world's largest messaging platforms. Responsibilities include designing and developing scalable systems, ensuring service stability and performance, reviewing code and improving processes, contributing to feature ideas, and building trust and reliability in products. The role requires 8+ years of backend service experience in statically compiled languages, strong software development knowledge, experience with Docker and containerization, and excellent communication skills. The position is remote-based in Estonia or Ireland with occasional travel.
Requirements
- 8+ years of experience in designing, building, maintaining and scaling backend services in statically compiled languages like Java or C#
- Strong fundamental knowledge of software development and best practices for RESTful service implementation
- Docker and containerisation in general. K8s experience would be ideal
- Experience in building and operating distributed, event driven systems
- Strong understanding and experience with asynchronous programming
- Strong oral and written communication skills: be prepared to frequently propose and discuss ideas and implementation details with your teammates, as well as involving other stakeholders in Twilio - weβre one single team, no one flies solo!
- Curious mindset - weβre not looking for someone with all the answers, but rather someone who is prepared to grow with us. We have in-team knowledge sharings and allocated focus time for engineering excellence. We also have hub wide events like Tallinn Tech Forum and AWS workshops
- Bachelor's degree in Computer Science, Engineering or a related field, or equivalent training, fellowship, or work experience
Responsibilities
- Design and develop scalable systems to support continuing increases in message volume and evolving requirements
- Keep our services stable and performant while following a quality-first mindset. Support production operations, building, testing, releasing and assisting with team on-call
- Review code and offer improvements to practices and processes to elevate the team and broader organization
- Contribute to feature ideas and betterments through tight cooperation inside and outside of your immediate team
- Build trust and reliability in your products, review performance against service level objectives, address incidents and prioritize improvements
Preferred Qualifications
- Experience in Java specifically
- Experience developing with AWS offerings - DynamoDB, SQS, EKS, EC2, etc
- Experience with technologies like Kafka and Terraform
Benefits
- Competitive pay
- Generous time off
- Ample parental and wellness leave
- Healthcare
- A retirement savings program