About the Role
Our client is a well-established technology firm specializing in enterprise software solutions. We are seeking an experienced Lead Software Developer with strong Java expertise to join our dynamic team. This role offers a remote work arrangement, providing flexibility and the opportunity to collaborate with a talented pool of developers across different regions. You will be responsible for leading software development projects, mentoring junior developers, and ensuring the delivery of high-quality, scalable, and maintainable code. This position requires a blend of technical leadership, deep programming knowledge, and excellent communication skills. You will play a key role in architectural decisions, code quality assurance, and the overall success of our software development lifecycle. We are looking for a motivated and results-oriented individual who is passionate about technology and driving innovation. The **Randburg** area is part of our network of engaged professionals, though the role itself is fully remote.
Key Responsibilities
- Lead the design, development, and implementation of Java-based enterprise applications.
- Mentor and guide a team of software developers, fostering a collaborative and productive environment.
- Oversee code reviews, ensuring adherence to coding standards and best practices.
- Contribute to architectural design and decision-making processes.
- Develop and maintain robust, scalable, and high-performance backend systems.
- Collaborate with product managers, stakeholders, and other engineers to define project requirements and deliverables.
- Troubleshoot and resolve complex technical issues in production and development environments.
- Optimize application performance and ensure system scalability.
- Write clean, well-documented, and maintainable code.
- Stay current with emerging Java technologies and industry trends.
- Drive the adoption of new technologies and methodologies to improve development processes.
Requirements
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent practical experience.
- 7+ years of professional software development experience with a strong focus on Java.
- Proven experience in leading software development teams and projects.
- Deep understanding of Java and its ecosystem, including Spring Boot, Hibernate, and related frameworks.
- Experience with microservices architecture and RESTful API design.
- Proficiency in relational databases (e.g., PostgreSQL, MySQL) and SQL.
- Familiarity with front-end technologies (e.g., JavaScript, Angular, React) is a plus.
- Experience with cloud platforms (AWS, Azure, GCP) and containerization (Docker, Kubernetes).
- Strong knowledge of software development best practices, including Agile methodologies, CI/CD, and testing.
- Excellent problem-solving, analytical, and communication skills.
- Ability to work effectively in a remote team environment.
Benefits
- Highly competitive salary and bonus structure.
- Comprehensive health, dental, and vision insurance.
- Generous retirement plan with company contributions.
- Significant paid time off and company holidays.
- Professional development budget for training and conferences.
- Remote work allowance for home office setup.
- Flexible working hours.
- Opportunities for career growth and leadership.
- Access to cutting-edge technology and tools.
- Regular virtual team events to foster camaraderie.