Job Description

  • Back
  • /
  • Job Description

Senior Software Engineer

Kwazulu Natal , R25000 - R80000 Per Month
Sector: IT / Computers / Software
Posted: Friday, 29 July 2022





Signup/Login to apply

Job Details

DUTIES & RESPONSIBILITIES, NOT LIMITED TO:

  • 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

Tech Stack:

  • 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.2
  • Backend Microservice (Services running through kubernetes and docker management)
  • Azure DevOps (Source control)
  • CI / CD
  • Pipeline management
  • Azure cloud services
  • Bugsnag (Front-End Real-time issue monitoring)
  • Graylog (Back-End Real-time issue monitoring)
  • Postman (API Documentation)

REQUIREMENTS 

  • 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.

General

  • 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.

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

Front-End Competency Requirements

  • Experience in various front-end architecture patterns
  • Experience in implementing service workers
  • Knowledge of modern authorization mechanisms, such as JSON Web Token
  • Experience building PWA (Progressive web applications)
  • Knowledge of isomorphic React

Nice to haves:

  • Have a decent amount of financial/investment knowledge and associated database/process design
  • 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, 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