Software Engineer

Twilio
Summary
Join Twilio as a Software Engineer (L2) in Bangalore, India and contribute to building a scalable and reliable data platform. You will design, develop, and deploy features in AWS cloud environments, ensuring service reliability and participating in on-call rotations. Collaborate with experienced engineers, utilizing Agile methodologies and contributing to projects impacting platform success. Responsibilities include writing automated tests, managing tasks using GitHub and Jira, and actively collaborating with other teams. The role requires 2-4 years of Java development experience, proficiency in AWS, and knowledge of microservices architecture. Twilio offers competitive pay, generous time off, parental and wellness leave, healthcare, and a retirement savings program.
Requirements
- 2-4 years of proven experience as a Java Developer, with an in-depth knowledge of the Java programming language and its ecosystem
- Knowledge of Python programming, with the ability to write clean, maintainable, and efficient code, and utilize its libraries and frameworks effectively
- Strong experience building resilient, high-throughput microservices and distributed systems, with a deep understanding of the microservices architecture
- Hands-on experience with SQL/NoSQL databases, and caching mechanisms (e.g., Redis, Memcached)
- Proficiency in AWS, GCP, or other public cloud platforms, with knowledge of cloud-native design patterns and services
- Containerization expertise with Docker and Kubernetes, including orchestration and scaling of services
- Familiarity with modern automated testing frameworks and CI/CD pipelines, ensuring high-quality and seamless software delivery
- A strong advocate for best engineering practices, including test-driven development (TDD), security-first approaches, and automation throughout the development lifecycle
- Ability to analyze and troubleshoot complex production issues, with a proactive approach to problem-solving
- Experience with Agile methodologies such as Scrum and a deep understanding of iterative development and continuous deployment strategies
- Excellent communication skills, with the ability to convey technical concepts clearly in both written and verbal formats
Responsibilities
- Design, develop, test, and deploy features and services in AWS cloud environments
- Ensure the reliability of your services, including responding to incidents, participating in on-call rotations, and conducting post-incident RCAs
- Meet the Definition of Done for all software you build, while continuously improving and reducing technical debt
- Write and maintain automated unit and integration tests within a continuous integration and delivery (CI/CD) environment
- Manage tasks and collaborate effectively using GitHub, Jira, and the teamβs build and deploy systems
- Actively collaborate with Product and other teams to influence and improve the service or platform
- Participate in design discussions, code reviews, backlog grooming, and Agile ceremonies, ensuring sprint commitments are met
- Troubleshoot and resolve issues independently or with your team in your domain
- Take responsibility for documenting the projects and processes you work on
- Quickly acquire new technical skills and adapt to the fast-paced, disruptive industry landscape
- Troubleshoot and debug to ensure smooth application performance
Preferred Qualifications
- Experience with observability tools (e.g., Prometheus, Grafana, Datadog) for monitoring microservices and distributed systems
- Familiarity with DevOps principles and infrastructure as code (IaC) using tools like Terraform or CloudFormation
- Knowledge of API gateway technologies and message brokers (e.g., Kafka) for building scalable, event-driven systems
Benefits
- Competitive pay
- Generous time off
- Ample parental and wellness leave
- Healthcare
- A retirement savings program