Job Search and Career Advice Platform

Enable job alerts via email!

Senior Software Engineer (Python)

Boardroom Appointments

Johannesburg

On-site

ZAR 400 000 - 500 000

Full time

Today
Be an early applicant

Generate a tailored resume in minutes

Land an interview and earn more. Learn more

Job summary

A leading recruitment agency is searching for a Senior Software Engineer specializing in Python based in Johannesburg, South Africa. The ideal candidate will possess a Bachelor's or Master's degree in Computer Science and extensive experience in software development, particularly in building web applications. Responsibilities include leading design and implementation efforts, ensuring scalability and performance, and mentoring junior engineers. This role offers the opportunity to work on complex software systems and drive innovation in the organization.

Qualifications

  • Extensive experience in software development, including significant hands-on experience in building and delivering web applications.
  • Demonstrated experience in leading software development projects or teams.
  • Strong understanding of software design principles, architectural patterns, and system scalability.

Responsibilities

  • Lead the design, development, and implementation of complex web applications.
  • Ensure scalability, performance, and reliability of software systems.
  • Conduct comprehensive code reviews to ensure code quality.
  • Mentor junior engineers and promote continuous improvement.

Skills

Software development
Web applications
Leadership
Front-end frameworks
Back-end technologies
Database systems
Cloud platforms
Microservices architecture

Education

Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field
Job description
About the job Senior Software Engineer (Python)
  • Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
  • Extensive experience in software development, including significant hands-on experience in building and delivering web applications.
  • Demonstrated experience in leading software development projects or teams
  • Expertise in programming and frameworks: Deep knowledge of front-end frameworks (React, Angular, Vue.js) and back-end technologies (Node.js, Django, Ruby on Rails).
  • Expertise in database systems (SQL, NoSQL) and data modeling.
  • Strong understanding of software design principles, architectural patterns, and system scalability.
  • Experience in designing and architecting complex, distributed, and highly available systems.
  • Familiarity with cloud platforms (AWS, Azure, Google Cloud) and microservices architecture.

Responsibilities:

  • Software development and implementation: Lead the design, development, and implementation of complex web applications.
  • Utilize your expertise in programming languages, frameworks, and libraries to deliver high-quality, scalable, and maintainable solutions that meet business requirements.
  • Technical design and architecture: Take a leading role in the design and architecture of software systems, ensuring scalability, performance, and reliability.
  • Collaborate with cross-functional teams to define technical requirements, establish best practices, and drive technical innovation.
  • Code review and quality assurance: Conduct comprehensive code reviews to ensure code quality, adherence to coding standards, and best practices.
  • Mentor junior engineers, provide constructive feedback, and help drive continuous improvement in code quality and maintainability.
  • Technical leadership and collaboration: Provide technical guidance and leadership to a team of engineers.
  • Foster a collaborative and inclusive work environment, promoting knowledge sharing, mentorship, and teamwork.
  • Collaborate with product managers, designers, and other stakeholders to ensure successful project delivery
  • Troubleshooting and problem-solving: Investigate and resolve complex technical issues that arise during the software development lifecycle.
  • Utilize advanced problem-solving skills to diagnose and address software defects, performance bottlenecks, and system failures.
  • Provide guidance and support to team members in resolving technical challenges.
  • Research and innovation: Stay up-to-date with emerging technologies, industry trends, and best practices.
  • Conduct research and evaluate new tools, frameworks, and methodologies to drive innovation and enhance development processes.
  • Identify opportunities for process optimization, automation, and tooling enhancements.
Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.