Termii is a communications platform that allows African businesses to send messages to anyone across SMS, email, voice, and instant messaging channels. With Termii businesses can; 1. Verify customer identity & transactions 2. Send product notifications to customers 3. Generate personality and engagement insights from customer transactions
Role Description
- As a Software Engineer at Termii, you will play a key role in designing, developing, scaling and maintaining our communication platform
- You will work closely with cross-functional teams to deliver high-quality software solutions that meet our business objectives and exceed customer expectations.
Responsibilities
- Design, develop, and maintain high-quality software solutions using Java Spring Boot.
- Architect and implement microservice-based architectures to support the scalability and resilience of our systems.
- Develop and optimize database schemas and queries in MySQL and NoSQL for efficient data storage and retrieval.
- Deploy and manage containerized applications on Kubernetes for seamless scalability and resource management.
- Integrate Kafka for real-time data streaming and event-driven architecture.
- Optimize application performance and scalability to handle growing user demands.
- Collaborate with product managers, designers, and other engineers to define and prioritize features and requirements.
- Perform code reviews, testing, and debugging to ensure the reliability and performance of our software systems.
- Mentor and coach junior engineers, providing technical guidance and support as needed.
- Stay updated on emerging technologies and industry trends, recommending and implementing improvements to our technology stack.
- Contribute to architectural discussions and decisions, advocating for scalable and maintainable solutions.
- Participate in Agile development processes, including sprint planning, daily stand-ups, and retrospectives.
Role Requirements
- Bachelor's degree in Computer Science, Engineering, or related field.
- 5+ years of experience as a software engineer.
- Proficiency in Java Spring Boot framework for building and deploying enterprise-grade applications.
- Previous experience scaling high-throughput applications
- Strong understanding of microservice architecture principles and best practices.
- Experience working with MySQL and NoSQL databases, including schema design, optimization, and query performance tuning.
- Hands-on experience with containerisation and orchestration tools such as Kubernetes.
- Familiarity with event-driven architecture and messaging systems like Kafka.
- Excellent problem-solving skills and attention to detail.
- Effective communication and collaboration abilities within cross-functional teams.
- Proven track record of delivering high-quality software solutions on time and within budget.
- Experience with continuous integration and continuous deployment (CI/CD) pipelines.
- Knowledge of cloud computing platforms such as AWS, Azure, or Google Cloud Platform.
Method of Application
Signup to view application details.
Signup Now