Job Openings
Associate Tech Lead - Java
About the job Associate Tech Lead - Java
Job Description
- Guide the design, development, and delivery of scalable and high-quality software solutions while ensuring alignment with MIT ESP coding standards and development practices
- Guide engineering teams in implementing effective solution designs, development methodologies, and coding standards to ensure reliable and consistent software delivery
- Ensure application performance, reliability, and quality through adherence to MIT ESP development standards, testing practices, and code reviews
- Lead technical estimations and contribute to planning activities to support efficient project execution and resource utilization
- Drive the identification, troubleshooting, and resolution of complex issues within applications and supporting systems
- Mentor and coach engineers, supporting their technical growth, problem-solving capabilities, and adherence to quality engineering practices
- Collaborate with cross-functional teams including engineering, product management, and design teams to translate business requirements into effective technical solutions
- Contribute to the design and development of intuitive and user-focused digital solutions that enhance overall user experience across platforms
- Contribute to research and development initiatives and promote the adoption of emerging technologies to enhance development practices and solution capabilities
- Ensure the preparation and maintenance of technical documentation, including design specifications and solution documentation
- Stay informed of industry trends and evolving technologies, evaluating their potential adoption to improve engineering practices and solution quality
Person Specification
- Bachelor's degree or higher in Computer Science, Information Technology, or a related discipline
- Minimum 3+ years of experience in software engineering, including experience leading the design and delivery of complex backend systems
- Experience providing technical leadership to engineering teams, guiding solution design, development practices, and technical decision-making
- Strong expertise in backend software development technologies, particularly Java and the Spring Boot framework
- Strong understanding of software architecture patterns, including microservices architecture, API-first design, and distributed systems
- Experience designing and implementing RESTful APIs and service-based architectures, with knowledge of API security mechanisms such as OAuth 2.0 or JWT
- Experience working with relational and NoSQL databases such as PostgreSQL, MySQL, or MongoDB
- Familiarity with cloud platforms and cloud-native application architectures, including environments such as AWS, Azure, or Google Cloud
- Experience with containerization and orchestration technologies such as Docker and Kubernetes
- Experience working with event-driven systems, messaging platforms, and asynchronous processing frameworks
- Familiarity with CI/CD pipelines, DevOps practices, and version control systems such as Git
- Strong understanding of application performance optimization, fault tolerance, and secure software development practices
- Experience with caching strategies, distributed data systems, and scalable system design
- Excellent analytical, debugging, and problem-solving capabilities in complex distributed systems
- Strong communication and collaboration skills with the ability to work effectively across engineering, product, and architecture teams
- Exposure to AI/ML integration, serverless architectures, or reactive programming approaches will be considered an advantage