Senior Back-End Software Developer – JHB
IT – Software Development
Johannesburg – Gauteng – South Africa
ENVIRONMENT:
Our client, an AgriTech start-up with offices in Johannesburg, is seeking a Senior Back-End Developer to help build a robust and scalable SaaS platform for the agricultural sector. They are looking for a pragmatic, solution-oriented developer who thrives on creating tangible value through software. The role focuses on designing, implementing, and maintaining core business logic, APIs, and data storage systems, while developing high-quality, scalable code and collaborating with cross-functional teams. Strong experience in Ruby on Rails, technical leadership, architecture, and managing large codebases is highly valued, alongside a passion for problem-solving and building impactful software solutions.
DUTIES:
- Design, develop, and maintain the core Ruby on Rails API and application logic.
- Design and implement GraphQL APIs to efficiently serve internal and external front-end clients and services.
- Manage the full application lifecycle, including deployment and maintenance on cloud infrastructure such as AWS and Heroku for APIs and background workers.
- Maintain and improve data storage strategies, researching sharding and other concepts, as well as different database/storage types (e.g., PostgreSQL, MongoDB, Snowflake).
- Write maintainable, production-ready code while adhering to software development best practices, including thorough testing and security.
- Conduct deep-dive R&D and architect scalable solutions to complex data and business logic problems.
- Support the continuous improvement of development practices and the technology stack.
- Collaborate with front-end developers to ensure smooth API integration and optimal performance.
- Say your say! They drive a culture of knowledge sharing in workshops/etc. and are always open to questions and feedback on topics like implementation details and product direction.
REQUIREMENTS:
Education:
- Preferably a degree in Computer Science, Mathematics, Engineering, or Information Systems.
Knowledge, Skills & Experience
- They require that you have a passion for working in/learning the below, and proficiency is beneficial.
- Relevant Experience: 5+ years of professional experience in back-end development.
Required Proficiency/Passion:
- Strong proficiency in Ruby on Rails for API and application development.
- Expertise with relational databases (e.g., PostgreSQL) and writing complex SQL.
- Experience designing and building GraphQL APIs.
- Familiarity with cloud infrastructure for deployment and maintenance (They run predominantly on AWS and Heroku).
- Experience with Git/GitHub for source control and CI/CD.
- Experience with Agile development methodologies.
Beneficial Experience:
- Experience with distributed data processing via ETL/similar processes.
- Familiarity with other databases/storage types (e.g., MongoDB, Snowflake).
- Experience using Docker for local development.
- Contributions to open-source projects or participation in relevant back-end communities.
ATTRIBUTES:
- Strong problem-solving and debugging skills
- Excellent teamwork, collaboration, written, and verbal communication skills.
- Ability to handle multiple projects and prioritize tasks effectively.