JobsToApply.com
Register

Senior Software Engineer

Organization: EPIC-Africa Job type: Full time Deadline: Open

About this opportunity

Job Description

This is a remote position.

JOB DESCRIPTION 

  • Job Title: Senior Software Engineer 
  • Job Level: Senior 
  • Team: Technology 
  • Reports to: Chief Technology Officer (CTO) 
  • Direct (planned) reports: Software Engineer, (Data Engineering Manager); fractional, specialist and outsourced engineers as assigned 
  • Location: Remote, Africa-based, with occasional travel for events and organizational moments 
  • Time commitment: Full-time 
  • Start date: As soon as possible, notice period dependent.

ABOUT EPIC-AFRICA 

EPIC-Africa is a pan-African infrastructure organization, dedicated to making African civil society findable, fundable, and capable. Africa is full of credible, impactful civil society organizations (CSOs) that traditional funding streams struggle to find. As a "CSO for CSOs," EPIC-Africa bridges this gap using pan-African data, sectoral research and mappings, and strategic initiatives like the African CSO Platform and the African CSO Awards, equipping funders with discovery they can trust while centering African agency and leadership. 

ABOUT THE TEAM 

The Technology team is the home of technological expertise in the organization. It is made up of three main areas: Product Management, Software Engineering and Data Engineering, supported by IT. 

Its flagship project is the African CSO Platform, a key channel to help make CSOs more findable, fundable, and capable. The team also owns EPIC-Africa's internal technology stack and hosts the Data, Tools & AI Center of Excellence (CoE), which sets the standards every team works to and helps colleagues develop the skills to meet them. The CoE builds the central data store that every team feeds its data into, of which the data generated by the Platform is a major part. 

The team is the technical counterpart to the rest of the organization, providing the technological expertise other teams need to achieve their ambitions. This ranges from prioritizing user needs for the Platform to better serve CSOs or Funders, helping Strategy & Operations set up the best knowledge management solution for the organization, or configuring the CRM with the Programs team. Finally, like all other teams at EPIC-Africa, it contributes products and services to our Growth & Sustainability Strategy, to support our efforts to become less grant-dependent and more financially resilient. 

The team recognizes technology as a means to organizational outcomes rather than an end in itself. It works in an agile way, driving delivery quickly while managing IT risk and cybersecurity appropriately. 

JOB PURPOSE 

The Senior Software Engineer owns the technical health of the African CSO Platform and the new products the Technology team builds under the Growth & Sustainability Strategy. The role covers architecture, build, code quality, automated testing and release, performance, observability, security and technical debt. It will prepare the Platform to scale from around 8,000 to 20,000 users by 2027, while shortening the path from pilot testing to stable, production-ready releases. 

This is a hands-on player-coach role. The post-holder writes and reviews production code, line-manages the Data Engineering Manager and Software Engineer, and directs external and fractional engineers. The Senior Product Manager owns what the team builds, and this role owns how it is built and shipped. The role works closely with the IT Manager on the organization's tech stack.  

KEY RESPONSIBILITIES 

1. Architecture & Technical Direction 

  • Own the technical architecture of the African CSO Platform and new Growth & Sustainability Strategy products, including application structure, integrations, environments and infrastructure. Ensure new services have defined deployment, monitoring, backup, recovery and support requirements before release. 
  • Translate the product and technology roadmap into technical designs, prioritized sprint sequencing and estimates, in close partnership with the Senior Product Manager. Agree trade-offs between speed, cost, quality, technical debt and maintainability before work starts. 
  • Set the scalability path for the Platform and new products, including build-versus-buy decisions, favoring proven, maintainable choices a small team can support. 
  • Own technical documentation, including architecture, API documentation, developer guides, configuration and operational runbooks, kept current so any engineer can maintain every system, respond to routine incidents and pick up work at handover.

Example success metrics: Technical designs, estimates and trade-offs agreed before build starts; architecture, API and configuration documentation kept current for every production system. 

2. Build & Deliver Across the Stack 

  • Design, build and maintain secure, scalable applications and services across front end and back end, including APIs, databases and server-side logic, to agreed acceptance criteria. 
  • Support multi-audience workflows, matching, notifications, content feeds and real-time interactions, with robust authentication and role-based access control. 
  • Own the Platform's search and discovery capabilities, delivering fast, relevant and high-quality results through appropriate technologies such as PostgreSQL full-text search, OpenSearch, Elasticsearch, hosted search services or vector search. 
  • Partner with the Data Engineering manager to build and maintain reliable data ingestion pipelines and data marts, including deduplication, record matching, transformation and data-quality validation, so Platform features and business users can depend on trusted, usable data. 
  • Ship AI-enabled features with the Software Engineer and Senior Data Engineer, including matching, verification triage, content automation and internal knowledge tools, with human-in-the-loop review and responsible use of AI. 
  • Lead the build of automated validation and screening against the CSO Platform data intake standard set by the Senior Data Engineer. Build profile enrichment automation with the Senior Product Manager so verification scales with a small team. 
  • Reduce technical debt continuously as part of everyday delivery. 

Example success metrics: Automations and features shipped against the enrichment and validation roadmap; open bugs and time to fix. 

3. Quality, Testing & Release Management 

  • Set and enforce best practice for coding, testing, code review and deployment across the team, including for external and fractional engineers. 
  • Own automated unit, integration, end-to-end, regression and performance testing pipelines, and release sign-off. Where no dedicated quality assurance (QA) capacity exists, engineers own testing and this role owns the standard. 
  • Establish and own the DevOps strategy and release management approach. This includes version control, continuous integration and deployment, environment management, infrastructure as code, feature flags, controlled A/B testing, rollback and change control. Delegate day-to-day implementation, monitoring and maintenance to the Software Engineer, with clear standards, review, oversight and escalation. 
  • Advise the CTO on when dedicated QA or other specialist engineering capacity is needed, based on team size, release frequency, escaped defects, regression cycle length and rework. 

Example success metrics: Deployment frequency, lead time for changes, change failure rate and time to restore service; defects caught before release; routine DevOps operations completed by the Software Engineer within agreed standards and escalation thresholds. 

4. Reliability, Security & Infrastructure 

  • Own uptime, performance, stability and scalability for the Platform and other tech products, including hands-on deployment and management of production services on Amazon Web Services such as RDS, S3, EC2 and Lambda, together with monitoring and alerting. Lead incident response for technical outages, delegate operational actions where appropriate, and ensure each significant incident has a documented cause, corrective actions, owner and completion date. 
  • Own cyber security across the Platform and other tech products: secure development practice, authentication, role-based access control, credential standards, vulnerability management and security monitoring. Implement the data-protection requirements set by the Data, Tools & AI CoE in code and infrastructure. 
  • Act as backup and technical escalation for Platform user support, which the Software Engineer leads day to day. Own the fix for recurring issues. 
  • Direct cyber security consultants and other external technical partners, ensuring their findings are acted on. 
  • Manage Platform cloud and tooling costs within an allocated budget, and ensure backup, recovery and business-continuity arrangements are in place and tested. Strategy & Operations handles purchasing and billing. 

Example success metrics: Platform uptime and availability against agreed service levels; time to restore service after incidents; security vulnerabilities remediated within agreed timeframes. 

5. Platform Tools & the Data, Tools & AI CoE 

The Technology team hosts the Data, Tools & AI CoE. This role owns the software and tools used for the Platform. The IT Manager owns the tools and AI for the organization as a whole. 

  • Select and configure the software and tools used for the Platform, within the IT Manager's standards. Collaborate with the IT Manager on organization-wide tech stack decisions and integrations. 
  • Provide technical support to the IT Manager on complex internal issues that require software engineering expertise. 
  • Act as backup for the IT Manager in emergencies during their absence, together with the Software Engineer. Set up emergency procedures with the IT Manager and CTO. 

Example success metrics: Platform software and tools documented and configured within the IT Manager's standards; teams able to post and manage CSO Platform content without engineering support. 

6. Team Leadership & Enterprise Contribution 

  • Line-manage and develop the Data Engineering Manager and Software Engineer, and supervise interns, setting clear ownership and escalation boundaries. Run regular 1:1s, code review, pairing and mentorship that raise the standard of the whole team. 
  • Oversee fractional, specialist and outsourced engineering capacity: scope, brief, quality-assure and hold to account, and recruit and vet technical partners to Partnership CoE standards. 
  • Contribute feasibility, risk and effort to roadmap prioritization early, and deputize for the CTO on technical matters as required. 
  • Explain technical constraints and options to non-technical colleagues in language they can act on. 
  • Contribute to organization-wide moments, including flagship reports and surveys, convenings, campaigns, funder reporting and planning, including those led by other teams. 
  • Undertake other reasonable responsibilities appropriate to the seniority of the role. This job description captures the main elements of the post but is not exhaustive and may evolve alongside the organization. 

Example success metrics: Code review and pairing coverage across the Software Engineer and external engineers; feasibility and effort input provided before roadmap commitments.



Requirements

PERSON SPECIFICATION 

This role suits an experienced full-stack engineer who sets technical direction while staying hands-on. They bring deeper engineering ability than the Software Engineer and coach others to raise the team's standard. They work collaboratively across teams, stay user-centric and build for the colleague who will maintain the code next. 

Essential qualifications, skills and experience 

  • Bachelor's degree in computer science, information technology or a related field, or equivalent demonstrable experience. 
  • A strong track record of professional software engineering, including senior or lead responsibility for a production system in live use. 
  • Proficiency in front-end technologies including HTML, CSS and JavaScript, and frameworks such as React, Angular or Vue.js. 
  • Strong back-end development experience with languages such as Node.js, Python, Ruby or Java, and strong working knowledge of relational and non-relational databases such as PostgreSQL, MySQL or MongoDB. PostgreSQL experience should include schema design, query optimization, data migrations and support for data-intensive applications. 
  • Familiarity with REST APIs and experience integrating third-party services such as HubSpot (CRM), Mailgun (email) and payment or incentive providers. 
  • Strong understanding of secure software development practice, common vulnerabilities, secure deployment, cloud security, security monitoring and incident response. 
  • Experience establishing and improving DevOps strategy and practice, including continuous integration and deployment pipelines, infrastructure as code and containerization such as Docker or Kubernetes. Hands-on experience deploying and managing production services on Amazon Web Services, including RDS, S3, EC2 and Lambda, and delegating day-to-day operations. 
  • Experience implementing authentication and role-based access control for production applications, including secure account, permission and session-management patterns. 
  • Experience designing and operating application search and discovery, using technologies such as PostgreSQL full-text search, OpenSearch, Elasticsearch, hosted search services or vector search, with attention to relevance, latency and maintainability. 
  • Experience building data ingestion pipelines and data marts, including deduplication, record matching, transformation and data-quality validation. 
  • Strong command of version control with Git and GitHub, and of code review and documentation practice. 
  • Proven track record of developing and scaling digital platforms or similar solutions from early validation to tens of thousands of active users, with a focus on data management. Experience mentoring engineers and directing external capacity. 
  • Familiarity with Agile and Scrum ways of working. 
  • Comfort dealing directly with users: able to write a clear, courteous explanation to a non-technical person whose work is blocked. 
  • Excellent communication and teamwork skills, including explaining technical matters to non-technical colleagues, and the ability to work effectively in a remote, multi-country team. 
  • Flexible and adaptable mindset, suited to working in a growing and evolving organization. 
  • Strong problem-solving skills, with the ability to navigate ambiguity, identify root causes, evaluate trade-offs and develop practical solutions. 

 Desirable 

  • Experience building or integrating AI, machine learning and large language model features in production using model APIs such as Anthropic (Claude), OpenAI or Google, with human-in-the-loop review and responsible use of AI. 
  • Experience with error monitoring, observability and analytics tools such as Sentry, PostHog, Google Analytics or Apache Superset. 
  • Experience designing, implementing and evaluating A/B tests and feature-flagged experiments, including appropriate measurement, guardrails and rollback criteria. 
  • Knowledge of search engine optimization (SEO) and answer engine optimization (AEO), including technical foundations, structured content and metadata that improve discoverability in traditional search and AI-powered answer experiences. 
  • Experience with accessibility standards (WCAG) and multilingual applications. 
  • Experience in a marketplace, community platform or knowledge hub product. 
  • Working knowledge of French. 
  • Experience in a mission-driven, donor-funded or civil society organization. 

COMPENSATION 

This is a senior role offering a competitive compensation package, commensurate with experience and qualifications. 

HOW TO APPLY 

Interested candidates should submit a CV and a cover letter outlining their vision and fit for the role through this form. Applications will be reviewed on a rolling basis, and early submissions are encouraged. Acceptance of submissions will close once the ideal candidate has been identified. 

EQUAL OPPORTUNITY STATEMENT 

EPIC-Africa is an equal opportunity employer. We celebrate diversity and are committed to creating an inclusive environment for all. We particularly encourage applications from individuals from underrepresented communities across Africa. For more information about us, please visit our websites: EPIC-Africa and African CSO Platform. 

Share this

Powered by Rosepat.com. Publish or discover opportunities. Get started.