Full Stack Intermediate Developer

IT – Software Development
Johannesburg – Gauteng

Our client, an Early Education focused Community Upliftment Programme with its central offices in Johannesburg, is seeking to fill the role of a Full Stack Intermediate Developer (FSID) which revolves around the development and upkeep of software applications for the company. The FSID assumes the responsibility of constructing and documenting solutions that possess the capacity to accommodate the company’s extensive expansion objectives. Successful candidates for this position are expected to hold a Bachelor’s Degree or formal certification in Information Technology, Computer Science, or a related field that aligns with the requirements of the role.
Solutions adhere to standards:
  • The FSID will be expected to construct solutions that conform to industry best practices and standards.
    • Solid design principles
    • Clean Architecture
    • Domain Driven Development
    • Test Driven Development
    • Continuous Integration / Deployment
    • Managed Source Control
    • Security Guidelines
  • Help control (minimize) technical diversity.
  • To constantly keep abreast of industry best practices and trends, identifying and attending training where agreed and applicable, and from time to time, completing appropriate certifications.
  • Maintaining personal awareness of current trends and developments in Information Technology and Information Networks and UX design.
Robust, supportable, secure, fit-for-purpose solutions:
  • Advise and enable different departments on appropriate system solutions for implementation challenges.
  • Ensure that the systems used are aligned with the organization’s overall requirements.
  • Ensure solutions are properly documented, code commented, DRY (don’t repeat yourself) principle to be supportable.
  • Ensure solutions are secure and capacitated to meet the company’s requirements.
  • Assist as required to identify, triage, research and resolve production issues.
  • Ensure support issues are resolved in a timely manner.
Accountable for:
  • Contribute to the design and implementation of a comprehensive, future-fit technology system that supports scaling the company’s delivery platform.
  • Contribute to strategies and systems that will keep the company’s platform effective and efficient.  
  • Accurate work estimates  
  • Meeting work and project deadlines  
  • Unit testing during development before code is deployed for QA and testing.
  • Assure code and delivery meets quality assurance standards – both accuracy and performance.  
Measures of success:
  • Reliable (with uptime 99% of time), scalable solutions, secure and user centric.
  • Consistently high quality and proactive delivery of service.
  • An affordable and sustainable set of solutions.
  • Be in possession of a Bachelors’ degree or formal certification in Information Technology/Computer Science or any degree relevant to this position and a valid driver’s license.
  • A minimum intermediate developer i.e., 3-4 years of experience across multiple teams, and is on a career path to software architect.
  • Be fluent in English and at least 1 other African language.
  • Experience in UX trends and current design strategy and technologies an advantage.
  • CRM implementations experience an advantage.
  • Knowledge of IT infrastructure and networks an advantage.
Technical Skills and abilities descriptions:
  • Solid understanding of OOP, Agile development methods
  • 3+ years development experience
  • Dynamics 365 development
  • C# .Net / ASP.NET / MVC (Required)
  • Entity Framework, Web Forms
  • Dynamics CRM Plug in Development
  • HTML 5
  • JavaScript / REACT
  • Node
  • CI/CD tools and techniques
  • USSD development experience is advantageous.
  • BI and Reporting (SSRS, PowerBI)
  • Data Integration, ETL and Data Migration experience
  • Ability to integrate CRM with other systems through GraphQL, REST API and SSIS
  • Experience with software development life cycle management
  • PowerApps and Power Automate experience is advantageous.
  • Experience managing IT technical support will be an advantage.
  • Committed to the purpose of the company.
  • The ability to decompose complex problems to develop solutions.
  • Ability to structure a solution, model the data, and design & build appropriate components.
  • Excellent written communication skills, including ability to present findings.
  • Agile Development
  • Excellent people management and relationship-building skills.