Skip to content

Senior Software Engineer at Ezra

Expired
Job Overview
Employment FullTime
Location Nairobi Kenya
Experience At least 5 years
Education Level Bachelor's Degree
svg background up
Opportunities Meet Aspirations

Job Title: Senior Software Engineer

Location: Nairobi, Kenya

Reports to: Senior Manager Engineering

About the role:

The Senior Software Engineer is a core technical leader responsible for the hands-on development and architecture of our mission-critical backend platform.

Main Objectives & Responsibilities:

  • System Design & Implementation: Lead the end-to-end design, development, and deployment of robust, highly scalable, and secure event-driven microservices using Java and Spring Boot.
  • Quality Assurance: Champion the adoption of engineering best practices, particularly Test-Driven Development (TDD), to ensure code quality, maintainability, and long-term stability.
  • Collaboration: Work closely with Product Managers, DevOps, and other engineering teams to translate complex business requirements into technical specifications and delivered features.
  • Mentorship: Provide technical guidance and mentorship to junior team members, raising the overall technical bar of the engineering organization.

Contribution & Impact:

This role directly impacts the organization’s strategic goals by modernizing and scaling the core platform infrastructure. Your output will be the creation of high-performing, resilient services that drive business capabilities, significantly improving platform stability and enabling faster feature delivery to our customers. Experience with functional programming, particularly Clojure, will provide an immediate advantage in evolving our current technology stack.

Key responsibilities:

  1. Backend Development
    • Design, develop, and maintain high-performance backend services using Java Spring Boot (or similar frameworks) and Clojure.
    • Adhere to clean code principles and industry best practices in all development efforts.
    • Ensure code quality through pair programming, code reviews, and other collaborative development methods.
  2. Event-Driven Architecture
    • Implement and maintain event-driven systems using message brokers (e.g., Kafka, RabbitMQ, or cloud-native equivalents).
    • Work on publish/subscribe patterns and streaming data pipelines to ensure real-time data processing and system responsiveness.
    • Optimize event flow for performance and scalability.
  3. Test-Driven Development (TDD)
    • Apply TDD principles throughout the software development lifecycle to deliver robust, maintainable solutions.
    • Write comprehensive unit tests, integration tests, and end-to-end tests.
    • Ensure high test coverage and effectively diagnose, document, and fix bugs.
  4. Architecture and Design
    • Collaborate with architects and senior engineers to define microservices architecture and component interaction.
    • Contribute to architectural discussions and decision-making processes, ensuring scalability, security, and maintainability of solutions.
    • Integrate best practices for secure coding, data privacy, and compliance.
  5. Performance Optimization
    • Monitor system performance, identify bottlenecks, and implement solutions for performance tuning.
    • Conduct profiling, load testing, and implement caching strategies to enhance system response times.
    • Work closely with the DevOps team to optimize CI/CD pipelines for quick and reliable deployments.
  6. Collaboration and Leadership
    • Mentor junior engineers on best practices, coding standards, and new technologies.
    • Collaborate with product managers, QA engineers, and DevOps to deliver features on time and with high quality.

Qualifications and Experience:

  • Bachelor’s degree in Computer Science, Software Engineering, or a related field.
  • 5+ years of professional experience in software development, preferably in a modern backend environment.
  • Strong proficiency in Java and proven, hands-on experience developing production-grade applications with Spring Boot.
  • Expertise in designing, building, and operating event-driven microservices architectures.
  • Proven ability to apply and advocate for Test-Driven Development (TDD) methodologies.
  • Direct experience with message brokers/queues (e.g., Kafka, RabbitMQ) for inter-service communication.
  • Solid knowledge of relational and NoSQL databases, caching layers (e.g., Redis), and RESTful API design.
  • Working experience with CI/CD pipelines (e.g., Jenkins, GitLab CI) and DevOps practices.
  • Experience with version control systems, particularly Git.
  • Excellent communication skills, problem-solving abilities, and a collaborative, team-oriented mindset.

Preferred Qualifications:

  • Exposure to Clojure or other functional programming languages.
  • Hands-on experience with Docker and container orchestration platforms (e.g., Kubernetes).
  • Experience with cloud platforms (AWS, Azure, GCP) for deploying and scaling services.
  • Familiarity with monitoring and observability tools (e.g., Prometheus, Grafana, ELK stack).
  • Knowledge of serverless computing environments.


Share This Post

Don't miss out on new jobs listing! Follow our channels Today WhatsApp Channel

Disclaimer Opened Career is a free job-posting website that does not charge applicants. We do not support recruitment agents or entities that demand money or favors to expedite the hiring process. Please use our platform responsibly and report any suspicious activity.
Why Opened Career
OUR OBJECTIVES
At Opened Career, we prioritize inclusivity, diversity, and equal opportunities for all individuals, regardless of their backgrounds or experiences. We believe in creating a level playing field where every candidate has the chance to showcase their skills and potential, and every employer has access to a diverse pool of qualified candidates.
CORE VALUES
Innovation
Integrity
Team Work
Excellence
Customer Focus
Professionalism