Software Lead / Project Manager (Java Development Team)
Description
or Master's Degree in Computer Science, Software Engineering, or a related technical discipline Minimum 5 year experience of software development experience (Java Programming) and minimum 1 year experience in leading group of software engineers are preferable. Strong understanding of computer science fundamentals (operating systems, network principles, data structures, and algorithms) Programming Languages: Spring Core, Spring Boot, Spring Security Cloud Platforms: AWS and Azure Frameworks: Common open-source frameworks and tools such as Kafka, RocketMQ, Dubbo, Zookeeper, and Redis. Deep knowledge of MySQL, including schema design, SQL optimization, and database scaling strategies. Job Responsibilities Leadership: Leading Technical Project s: Steering technical projects from inception to completion is a primary responsibility, ensure projects align with business goals and are delivered on time. Mentoring 2-5 Developers : Mentorship is crucial, as Software Leads guide junior developers in their professional growth. Conducting Code Reviews:
Ensuring code quality by conducting thorough code reviews and implementing best practices is a key responsibility
Design & Development Take ownership of the design, development, refactoring, and performance optimization of core system components, delivering high-quality and maintainable code. Technical Innovation & Problem-Solving Research, design, and implement innovative solutions to address complex business and technical problems, particularly in high-concurrency scenarios. System Architecture Contribute to system architecture decisions, focusing on scalability, high availability, and fault tolerance. Full-Lifecycle Participation Actively participate in the entire software development lifecycle, from requirements analysis and system design to testing, deployment, and operational monitoring. Collaboration & Knowledge Sharing Work effectively with local and regional team members, as well as business unit partners. Share knowledge, promote best practices, and help elevate the team's overall technical capabilities.