Our client is an educational solutions company that offer teaching and learning experiences to educators, students and parents across Africa, through innovative software and technology.
They provide the most effective, affordable and innovative solutions to revolutionize education in Africa, helping to strengthen the next generation of leaders.
Their mission is to transform education using technology. They currently have an opening for a Senior Backend Developer in Abuja
The ideal candidate must be passionate about solving problems and derive satisfaction upon successful completion of projects.
In this role, you will be responsible for providing technical leadership during the analysis, design and implementation phases of a project.
The ideal candidate will have a deep understanding of current systems, help define requirements for new initiatives, work with business stakeholders, and manage backlog and development queue.
Work with various broad technologies : J ava EE, Spring Framework, Restful architectures, Relational and Nonrelational databases.
Develop and maintain service-oriented architectures.
Work with other developers, business analysts, and product owners across the business platforms team to understand business and technical processes, gather requirements, and collaborate on the delivery of solutions.
Analyze and improve our client's products and services to deliver an unsurpassed level of availability, scalability, and reliability whilst maintaining simplicity of design.
Lead the software development team in analysis, design, implementation and / or upgrade of software applications.
Identify the best practices for CI / CD and DevOps and lead the development team in integrating them with all projects.
Determine and communicate the implications of system-level decisions on subsystems and components, and help determine how best to mitigate or take advantage of these implications.
Determine and communicate the requirements and capabilities of components within the context of the larger systems, project, and team.
Support management of the team’s technical infrastructure (e.g., repository, build system, testing system) under guidance from the systems engineer or other team leads.
Participate in efforts to share SE technology and expertise within the company; mentor junior and aspiring SE engineers.
Perform tasks efficiently and work together with team to ensure project success
5+ years experience in systems management or software development with systems management responsibilities.
Understanding of high-availability, fault-tolerant, scalable, distributed systems and methodologies like agile, unit testing, pair programming, and continuous integration.
Deep understanding of how to build performant, decoupled, testable, maintainable code.
Expertise with software development in Java programming language. Hands on experience
Extraordinary creative and innovative problem-solving skills, with a willingness to take responsibility for the software you write all the way to production.
on Spring framework is additional advantage
Working knowledge with datastores (e.g., RDBMS, time-series-database, NoSql, search, analytics).
Good understanding of typical web application, SOA and micro-services patterns.
Hands on experience with public cloud offerings (e.g., AWS, GCP, etc.)
Knowledge of open source libraries, tools and frameworks (e.g. for logging, wiring, testing, building)
Experience facing the challenges of building software as a service, including deploying and maintaining software at scale
Ability and willingness to learn new programming languages, frameworks and paradigms