- Frontend (Customer) – React, using redux for state management.
- Frontend (Admin) – React, using sagas for state management
- Frontend (Marketing) – React, using gatsbyjs for static site building.
- Backend (Dashboard/Admin/ DMZ Layers) – .Net Core 2.
- Backend Microservice (Services running through kubernetes and docker management) Azure DevOps (Source control)
- Pipeline management
- Azure cloud services
- Bugsnag (Front-End Real-time issue monitoring)
- Graylog (Back-End Real-time issue monitoring)
- Postman (API Documentation)
The candidate should at minimum have experience in the form of:
? Proficient in C#, with a good knowledge of its ecosystems and best practices.
? Proficient with the .netcore (v2.2) frameworks.
? Strong understanding of object-oriented programming.
? Proficiency in writing reusable C# libraries- ? Proficiency in building web-based applications.
? Familiarity with agile environments
? Proficient Troubleshooting abilities
? Good communication skills
? Understanding fundamental design principles behind a scalable application
? Good understanding of front-end development languages including ReactJs, HTML5, and CSS.
? Good understanding of server-side css pre-processing frameworks, such as LESS and SASS.
? Good understanding of modern frameworks – ReactJS, KnockoutJS, AngularJS
? Proficient understanding of version control tools. (Git, Mercurial, SVN)
? Experience building and integrating with RESTful API’s
? Experience working with common front-end tools such as Babel, Webpack, NPM and YARN
? 8+ years’ experience as a back-end Software Developer
? 2+ years’ experience as a front-end Software Developer
? Prior experience in a technical position
? College or University degree in Computer Science, a related discipline or proven experience in software development.
Core Competency Requirements
? Proficient with C#development.
? Experience with React development.
? Experience with source control management systems and continuous integration/deployment environments. GIT, Azure Pipelines
? Basic understanding of Common Language Runtime (CLR), its limitations, weaknesses, and workarounds
? Implementing automated testing platforms and unit tests
? Knowledge of concurrency patterns in C#.
? Familiarity with Microsoft SQL Server.
? Knack for writing clean, readable C# code
? Creating database schemas that represent and support business processes.
? Experience with agile and scrum development methodologies.
? Experience with debugging, performance profiling and optimisation
? Strong initiative to find ways to improve solutions, systems, and processes
? Help create an inspiring team environment with an open communication culture
? Take accountability for team targets
? Assist to hire junior and mid-level developers
? Encourage creativity and intelligent risk-taking
? Translate application storyboards and use cases into functional applications.
? Design, build, and maintain efficient, reusable, and reliable C# code.
? Ensure the best possible performance, quality, and responsiveness of applications.
? Identify bottlenecks and bugs, and devise solutions to these problems.
? Help maintain code quality, organization, and automatization.
? Analyze system requirements and prioritize tasks
? Develop technical specifications and architecture
? Test and debug various .NET applications
? Review and refactor code
? Deploy fully functional applications
? Upgrade existing programs
? Support junior developers’ work
? Document development and operational procedures
NICE TO HAVES
? Have a decent amount of financial/investment knowledge and associated database/processdesign
? Show interest in fintech, cryptocurrencies, blockchain and broader financial industries
? The ability to think and act strategically while also being hands-on
? Able to embrace the start-up nature of the company so must be open to work abnormal hours at certain times if required
? A British or EU passport in addition to a South African passport ( not NB )
- C#. .net core