Job Description

  • Lead the technical design, development, and delivery of software solutions while ensuring alignment with MIT ESP coding standards and engineering practices
  • Define and guide solution architecture, system design patterns, and technical approaches to support scalable and reliable software systems
  • Provide technical leadership to engineering teams, ensuring consistent application of development methodologies, coding standards, and best practices
  • Review technical designs and code implementations to ensure solution quality, performance, and maintainability
  • Drive technical estimations and contribute to planning activities to support effective project execution and delivery outcomes
  • Lead the identification, troubleshooting, and resolution of complex technical issues across applications and supporting systems
  • Mentor and guide engineers to strengthen technical capabilities, problem-solving skills, and adherence to engineering standards
  • Collaborate with cross-functional teams including product management, architecture, and design teams to translate business requirements into technical solutions
  • Ensure application performance, scalability, reliability, and security through adherence to development standards and quality assurance practices
  • Contribute to architecture discussions and technology decisions that support long-term platform evolution and system sustainability
  • Promote best practices in software development, testing strategies, and continuous integration and delivery practices
  • Ensure technical documentation including architecture designs, solution specifications, and implementation guidelines are maintained
  • Monitor emerging technologies and engineering practices to identify opportunities for innovation and continuous improvement

Person Specifications

  • Bachelor's degree or higher in Computer Science, Information Technology, or a related discipline
  • Minimum 5+ years of experience in software engineering, including experience leading the design and delivery of complex backend systems
  • Demonstrated 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