This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
Our client is a French company that aims to revolutionize digital payments in Africa. The customer’s team is ambitious and hard-working, consisting primarily of senior-level specialists. We develop innovative solutions for Guinea that help them with money transfers and cashless payments. The app is constantly in top positions in its category on the marketplace with over 10K installations per day.
Job Responsibility:
Develop solutions and algorithms according to technical specifications or other requirements documentation
use standard algorithms in the applicable cases
Write program code according to the defined application architecture
Possess knowledge of software development methodologies (Waterfall, Agile, etc.)
Structure and format the source code, comment and mark up the code, as well as name variables, functions, classes, data structures, and files according to the company conventions and industry best practices
Implement code refactoring and optimization methods. Post refactoring and optimization results to the collective knowledge base as the best practices
Modify existing software code and test its availability. Analyze software code compliance with readability and performance standards
Use version control systems to track code optimization progress, as well as to merge or split code entities. Commit changes according to version control rules
Perform analysis, verification, and debugging of the software code at the level of application units
Develop procedures to test code availability, collect diagnostic data, generate test data sets with desired characteristics
examine the required software characteristics etc.
Reproduce defects logged in the defect database, establish their causes, and modify code to eliminate defects
Determine software product compliance with the technical requirements
Collect and analyze results of software tests. Deliver correct interpretation of diagnostic data
analyze the significance of the obtained software characteristics
can document test results. Assess software product availability
Develop, document, and edit programming interfaces, software modules and components assembling procedures, software deployment and update procedures as well as data migration and transformation (conversion) procedures
Assemble software modules and components into software product
connect software product to the external environment. Test availability of software product versions
Analyze variants of software requirements implementation
evaluate their time-consumption and workload. Conduct assessment and justification of the solutions recommended for software requirements implementation
Approve technical requirements for software with stakeholders. Evaluate and justify terms of task completion. Assign tasks to developers, monitor task implementation. Provide training on the project
Have valid competence-related certifications
Participate in conducting of internal staff testing (“matrix”), organization of lectures, seminars, developers’ talks, knowledge sharing sessions, and other forms of trainings for developers
Participate in conducting of external training (Academies) for students and staff from regional offices etc.
Requirements:
Strong experience with PHP 8.3/8.4
Proficiency with Symfony 6.4 / 7.x
Deep knowledge of PostgreSQL 13+
Practical experience with Redis
Experience with RabbitMQ
Experience with AWS services (ECS/Fargate, EC2, Auto Scaling, Secrets Manager)
Experience building CI/CD pipelines with GitLab and Docker
Practical experience with PHPStan, PSR-12, ECS
Experience with PHPUnit and Foundry
Nice to have:
Experience operating services on FrankenPHP/Caddy and Nginx + FPM
Experience with Codeception
Knowledge of DDD, modular architectures, and boundary enforcement (Deptrac)
Experience with microservice architectures or asynchronous workflows
Familiarity with event-driven systems, DLQ/ACK/NACK mechanics, routing, and the outbox pattern
Understanding of high-concurrency patterns (race conditions, data consistency, audit trails)