About the Role:
We are looking for a highly skilled and motivated Java Tech Lead to join our team, focusing on designing, developing, and maintaining the server-side logic for our applications. The ideal candidate will have a solid foundation in Java, Spring Boot, and modern development practices. You will be responsible for building robust APIs, managing data persistence, and ensuring our services are reliable and performant.
Job Responsibilities:
1. Technical Leadership & Engineering Management
- Lead and mentor multiple development teams responsible for Driver, Taxi, and Finance systems.
- Set technical direction, development standards, and architectural guidelines across platforms.
- Oversee day-to-day engineering execution including design reviews, code quality, testing, and deployment readiness.
- Drive engineering excellence through continuous improvement, automation, and the adoption of modern engineering practices.
2. System Architecture & Solutioning
- Write clean, efficient, and well-tested code, ensuring high quality through comprehensive unit/integration tests and active participation in peer code reviews.
- Own the technical roadmap and ensure systems are scalable, robust, and optimized for real-time operations.
- Provide architectural guidance for new features, system enhancements, and integration across internal platforms.
- Lead modernization initiatives, including refactoring of legacy services and migration toward cloud-native, microservices-based architecture (where applicable).
3. Product & Stakeholder Collaboration
- Work closely with Product, Operations, and Business teams to translate business requirements into technical solutions.
- Prioritize enhancements and improvements based on customer impact, service reliability, and operational needs.
- Ensure timely delivery of features and improvements while maintaining system stability.
4. Platform Reliability & Performance
- Oversee the health, performance, and availability of the Passenger/Driver Admin System, Taxi Management system, and Finance system.
- Ensure appropriate monitoring, alerting, observability, and incident response processes are in place.
- Lead post-incident reviews and drive long-term corrective actions.
5. People Leadership
- Build a high-performing engineering culture focused on teamwork, accountability, and continuous learning.
- Provide coaching, career development, and performance management for team leads and engineers.
6.Any ad hoc duties as assigned
Job Requirements:
- Bachelor's degree in computer science, Engineering, a related field, or equivalent practical experience.
- At least 8+ years of software engineering experience, preferably with at least 5 years leading engineering teams.
- Solid hands-on experience in backend development with Java (JDK 17+) and the Spring Boot framework.
- Strong background in backend development (e.g., Java/Spring Boot, RESTful services).
- Exposure to microservices, event-driven architectures (Kafka, Redis Streams), and high-throughput systems.
- Experience with relational databases (e.g., PostgreSQL, MySQL) and ORM frameworks (e.g., Hibernate, JPA) is preferred.
- Strong understanding of containerization concepts and hands-on experience with Docker.
- Familiarity with DevOps practices, CI/CD pipelines, containerization (Docker/Kubernetes), and observability tools.
- Ability to drive decisions, manage complexity, and balance technical depth with business priorities.
- Experience working in an Agile/Scrum development environment is a plus.
- Experience in system modernization, such as migrating legacy applications (e.g., JBoss) to modern microservices architectures based on Spring Boot and RESTful principles.
- Experience with Python for backend development or system maintenance will be advantage.
- Experience with frontend frameworks and development, such as Vue.js or React.