Senior Software Engineer

roomDar es Salaam

business_centerFull Time

book1 Direct Reports

bookmark Senior Manager

directions_carDriving License Not Required

flagOnly Open to Tanzanian Nationals

access_timeExpiring in 33 Days

businessIT & Software

Summary

The Senior Software Engineer will take a leading role in the design, specification, development and evolution of the Viaservice platform. Beyond hands-on development, the role owns technical architecture, drives engineering quality, and helps shape the cloud and infrastructure landscape that the platform runs on. The Senior Software Engineer designs solution and component architectures, contributes to the continuous improvement of the platform and its technical documentation, and defines and executes test strategies to validate the software. As part of the support team, (s)he helps resolve service-related disruptions and platform issues, and takes ownership of the AWS cloud environment, CI/CD pipelines and supporting ICT infrastructure. Working closely with the product owner, (s)he is involved in the design and delivery of new features in response to customer requests, and mentors other developers to raise the overall capability of the team. 

Responsibilities

Software development       

  • Designs and develops applications and features across the platform.
  • Contributes to the maintenance and ongoing development of the platform, systems and documentation.
  • Writes clean, well-tested, maintainable code and champions engineering best practices.

Architecture & system design

  • Designs solution and component (sectional) architectures and documents them within the defined processes.
  • Manages and governs the design of systems, ensuring scalability, resilience, security and performance.
  • Guides the technical direction and continuous modernisation of the platform.
  • Balances technical debt, delivery speed and long-term maintainability.

Software analysis

  • Supports the Product Owner and team in formulating and refining backlog items.
  • Translates user stories into technical specifications and documents them appropriately.
  • Ensures specifications are correctly developed into working software. 
  • Introduces new technologies, patterns and frameworks as solutions where they add value. 

Cloud, DevOps & CI/CD

  • Sets up and maintains the AWS-based cloud environment using Infrastructure-as-Code (e.g. AWS CloudFormation / Terraform).
  • Builds and maintains CI/CD pipelines to enable reliable, automated and frequent releases.
  • Applies containerisation and automation to improve deployment consistency and speed.
  • Manages environments, secrets, backups and disaster-recovery practices, with attention to cloud cost and security. 

ICT & infrastructure

  • Helps manage and safeguard the wider ICT environment, systems and infrastructure that support the business.
  • Contributes to information security, access management and IT operational practices.
  • Advises on and supports integrations with third-party and internal business systems.
  • Supports colleagues on platform-related ICT matters where required.

Test Management

  • Manages the testing of new functionality and releases across the digital products and services.
  • Creates test scripts, charts and descriptions and aligns them with the Product Owner.
  •  Executes (chain) unit, acceptance and regression tests, favouring automation.
  •  Advises on the market readiness of new features and issue-solving solutions.

Support & operations

  •  On request of first-line support, investigates and resolves issues and bugs.
  •  Creates work-arounds for immediate issues and analyses root causes to prevent recurrence.
  • Monitors the platform and infrastructure and responds to service-related disruptions

Performance monitoring & analysis

  •  Uses monitoring and observability tools to track application and infrastructure performance.
  •  Analyses performance metrics and implements optimisations accordingly.
  •  Enhances system architecture and infrastructure as needed. 

Technical leadership & mentoring

  • Mentors and coaches developers through code review, pairing and knowledge sharing.
  • Sets and upholds engineering standards and ways of working.
  • Acts as a technical point of reference for the team and stakeholders. 

Education and Qualifications

  • Bachelor's degree in Computer Science, Software Engineering, ICT or a related field (or equivalent professional experience).
  • Java and Spring Boot (current LTS / modern versions).
  • PostgreSQL and SQL.
  • Modern front-end: Angular (current version) with HTML and CSS / Bootstrap.
  • REST API / HTTP / JSON concepts and web-service development.
  • Common Java frameworks and libraries (e.g. JUnit, JDBC, JAXB, Spring).
  • AWS services and Infrastructure-as-Code (e.g. CloudFormation / Terraform); containers (e.g. Docker).
  • CI/CD tooling and Git-based workflows.
  • Monitoring / observability and performance-tuning tooling. 

Requirements

  • 7+ years' experience as a software developer, with a track record of taking senior or lead responsibility; experience within a transport, logistics or trade-related industry is a strong advantage.
  • Proven experience designing software architectures and taking ownership of technical decisions.
  • Excellent knowledge of Object-Oriented programming and design patterns.
  • Experience across the entire SDLC, including requirements gathering and analysis. 
  • Hands-on experience building and operating cloud environments on AWS, including administration and management.
  • Experience with DevOps practices and CI/CD tooling, including Infrastructure-as-Code.
  • Extensive use of unit testing (e.g. JUnit); experience with TDD is a plus.
  • Exposure to wider ICT / infrastructure responsibilities (security, systems, integrations); experience integrating or managing ERP / business systems is a nice-to-have. 

Characteristics

  • Very good written and oral communication skills.
  • Problem solver, result-oriented, conscientious and rigorous.
  • Comfortable working in a fast-paced Agile environment.
  • An analytical mind, self-motivated and dynamic.
  • A genuine team player who lifts those around them

Reporting To

  • Product Manager

-

-

-

IT & Software: 7 Years

-

-

-

-