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.
 - Required Proficiency/Passion: Strong proficiency in Ruby on Rails for API and application development.
 - Relational databases: Expertise with relational databases (e.g., PostgreSQL) and writing complex SQL.
 - GraphQL: Experience designing and building GraphQL APIs.
 - Cloud infrastructure: Familiarity with cloud infrastructure for deployment and maintenance (They run predominantly on AWS and Heroku).
 - Version control & CI/CD: Experience with Git/GitHub for source control and CI/CD.
 - Agile: 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.