- Location
- ZA
- Type
- Full-time
- Department
- Finance
- Seniority
- Mid
- Experience
- 2+ years
- Closing date
- Today
- Source
- Vincere
Description
Mid-Level Software Developer
Location: Moreleta Park, Pretoria – On Site
Position Type: Permanent, Full-Time
Department: Software Development – Payment Platform Squad
Reports to: Development Manager
About the Opportunity
An established organisation within the financial services and payments industry is looking for a Mid-Level Software Developer to join its Payment Platform Squad.
This is an opportunity for a developer who enjoys taking ownership of backend development work and contributing to the full development lifecycle, from implementation and testing through to documentation and code reviews.
The successful candidate will work primarily with C#/.NET, Oracle and PostgreSQL databases, and REST API integrations. Strong SQL and stored-procedure capability is essential. You must be comfortable working independently with database structures, writing procedures and considering query performance, rather than simply consuming database functionality.
This is not a ticket-taking role. You will be expected to understand the features you develop, test both standard and failure scenarios, document your work for operational support and contribute meaningfully to the team's code review process.
The position offers a growth path towards a Senior Software Developer role through technical leadership, contributing to architecture decisions and mentoring other developers.
Key Responsibilities
- Develop and implement backend features using C# within an established production environment.
- Write and maintain Oracle PL/SQL or PostgreSQL stored procedures supporting payment-processing functionality.
- Integrate REST APIs, ensuring appropriate authentication, error handling, pagination, retries and timeout management.
- Write and maintain unit tests for new code, including boundary conditions and failure scenarios.
- Participate in pull-request reviews, providing constructive and actionable feedback.
- Maintain clear technical and operational documentation, including runbooks that enable other developers to support the system.
- Follow secure coding practices, including appropriate handling of sensitive payment data and keeping software dependencies current.
- Use Git feature branches, clear commit messages and detailed pull-request descriptions.
- Participate in sprint planning, reviews and retrospectives, providing input on capacity, progress and potential blockers.
- Develop awareness of cloud deployment practices and database performance, including stateless application design, connection handling, execution plans and N+1 query issues.
- Take end-to-end ownership of assigned features, from development through testing, documentation and delivery.
Minimum Requirements & Experience
- NQF Level 6 Diploma or NQF Level 7 Degree in IT, Computer Science, Software Engineering or a closely related field.
- 3–5 years' production backend development experience.
- Strong C#/.NET development experience, with exposure to async/await, error handling, transactional patterns and idempotency.
- At least 2 years' experience writing SQL queries and stored procedures in Oracle or PostgreSQL production environments.
- Ability to independently write database procedures, understand indexing concepts and interpret basic execution plans.
- At least 2 years' unit testing experience within a production codebase, including boundary and failure-path testing.
- At least 2 years' experience integrating REST APIs, including authentication, error handling, retries and timeout management.
- At least 2 years' experience using Git, feature branches, pull requests and code review workflows.
- Experience developing and maintaining technical and operational documentation.
- Practical awareness of cloud development concepts, including containers, serverless basics, statelessness, environment-variable configuration, connection pooling and retry mechanisms.
Technical Skills & Tools
- Backend Development: C#/.NET, async/await, error handling, transactional patterns and idempotency.
- Databases: Oracle SQL and PL/SQL or PostgreSQL, stored procedures, indexing and query performance.
- Testing: NUnit or xUnit, with a focus on boundary conditions and failure scenarios.
- API Integration: REST APIs, authentication, 4xx/5xx error handling, pagination, timeouts and retry with backoff.
- Version Control: Git, feature branching, pull requests and constructive code reviews.
- Documentation: Runbooks, technical documentation and system write-ups.
- Cloud Awareness: Containers, serverless concepts, statelessness, connection pooling and cloud deployment fundamentals.
Required Tools and Exposure:
- Daily use of GitHub.
- Oracle SQL Developer or pgAdmin.
- Postman.
- Visual Studio or VS Code.
- QASE experience, or willingness to learn and use it within the first sprint.
- Practical awareness of AWS Lambda/S3 or Azure Functions/Blob Storage.
Advantageous Experience
- Professional certification such as Azure Developer Associate, AWS Developer Associate or equivalent.
- Experience within fintech, payments or financial services.
- Basic understanding of PCI-DSS developer requirements and secure handling of payment data.
- Exposure to database query plans and performance issues such as N+1 queries.
- Knowledge of DebiCheck or South African payment schemes.
- Exposure to cloud SDKs such as boto3 or azure-storage-blob.
Key Competencies
- End-to-end ownership: Takes responsibility for assigned development work without requiring repeated follow-up on progress or quality.
- Communication: Communicates clearly, professionally and timeously, particularly when identifying blockers or delivery risks.
- Testing mindset: Considers edge cases, failure paths and system reliability rather than focusing only on successful scenarios.
- Attention to detail: Maintains high standards in code quality, testing, documentation and delivery.
- Collaborative approach: Welcomes constructive feedback and contributes positively to code reviews and team discussions.
- Intellectual honesty: Comfortable asking questions, acknowledging gaps and working collaboratively to improve solutions.
- Curiosity and learning: Interested in payment transaction flows, cloud technologies and the secure handling of regulated data.
- Professionalism: Well-spoken, team-oriented and able to work effectively in a collaborative development environment.