Our client is a leading software services and consulting company focusing on delivering innovative solutions with a strategic emphasis on generative AI. They are expanding their team to include an individual contributor that will act as a Senior Software Developer / Team Lead, with a hands-on approach to complex development tasks.
This role involves performing complex research, design, and software development tasks across multiple systems. You will be responsible for guiding and mentoring junior developers, collaborating with key stakeholders, and translating customer needs into effective software solutions.
*This is an initial six-month contract, with the potential to transition into a permanent role afterwards directly with our client
Main Responsibilities will include
The responsibilities will include, but are not limited to, the following key deliverables:
- Interface with other technical personnel or team members to finalize requirements and understand product needs.
- Write and review detailed technical specifications for developing complex system components.
- Complete complex bug fixes and resolve technical issues as needed.
- Collaborate closely with development teams to translate complex product requirements into effective software designs.
- Implement development processes, enforce coding best practices, and conduct code reviews.
- Operate in various development environments (Agile, Waterfall, etc.) while working with key stakeholders to ensure successful project delivery.
- Mentor and train junior developers, ensuring they understand critical aspects of their roles.
- Stay updated with the latest technological advancements and apply them to improve software solutions.
- Design and work with complex data models to enhance system functionality.
Qualifications and Experience required
- 5+ years of Software Engineering experience.
- Bachelor’s degree in Engineering, Computer Science, or equivalent experience.
- Advanced knowledge of software development methodologies (Agile, Waterfall, etc.).
- Proficient in data manipulation languages, including optimization techniques.
- Strong understanding of normalized and dimensional data modelling principles.
- Expertise in development languages, including but not limited to Java/J2EE, JavaScript, JSP, C/C++, HTML, XML, SQL, Windows, UNIX, and .Net.
- Strong research skills and a solid understanding of industry best practices in software development.
- Ability to work collaboratively with internal and external stakeholders.
- Experience with test-driven development and debugging complex systems.
Desirable, but not Essential
- Familiarity with cloud-based architectures and containerization technologies such as Docker and Kubernetes.
- Experience working in DevOps environments with CI/CD pipelines.
- Exposure to data warehousing, ETL processes, and data analytics.
Personal Attributes
- Aspiration or exposure towards solution architecture.
- Excellent communication and teamwork skills.
- Strong problem-solving abilities and willingness to adapt to new challenges.
- Interested in a long-term role within a growing and dynamic team • You have a knack for picking up new technologies
- You love to find easier ways of doing things
- Passionate about technology
- Comprehensive thought and error handling solutions
- Analytical as well as strong development skills
- Delivery focused with attention detail
- Able to work in projects (multi-task) environment
- Responsive to change
General:
- Only shortlisted candidates will be contacted. If you do not hear from us within 30 days, please consider your application unsuccessful.
- Only South African Citizens (Born in SA) will be considered.
- Please include your current salary and salary expectations with your application.
Desired Skills:
- C
- C++
- J2EE
- Java
- Javascript
- Leadership
- Software Development