Implementing code that can be reused on multiple platforms
Breaking down complex issues into smaller manageable tasks
Support existing and develop new functionality and components.
Understand existing product and domain elements and work with business analysts to refine and implement new requirements.
Refactor and improve the code to keep the product maintainable and adaptable to new requirements.
Work effectively in a team environment and follow/develop product software development processes and standards.
Evaluate and improve application performance, and high availability features.
Create unit and integrated system tests to show that the developed functionality works as intended.
Create technical documentation that explains how the various components of the system work and how to use them.
Do root cause analysis on bugs to find and fix the cause of a problem in an integrated system.
Build and deploy the system on an application server.
Create and execute functional test scenarios (dev testing).
Incorporate the work done by other developers and do whatever is necessary to get the system to work again with the changes, including debugging other peoples code, making changes to test data, etc.
Provide guidance and assistance to more junior developers to ensure they deliver quality work within the agreed timeframes.
Provide technical leadership to the development team and other teams within the company.
Requirements:
Relevant tertiary qualification in Information Technology or Computer/Engineering Sciences and/ OR matric with at least 15 years relevant experience as a developer as part of a team in a software development environment.
A strong knowledge of Microsoft web development toolsets is essential.
4 years relevant experience as a Team Lead Integration developer as part of a team in a software development environment
Good understanding of the .NET framework and C# language features
Good understanding of the python language
A good understanding of the SDLC process, tools and techniques specifically as applied to software development methodology.
Skills and Knowledge Requirements:
Experience with team development tools: Use of source control applications (preferably GIT); Use of a UML and other tools for documentation.
Knowledge of security vulnerabilities (OWASP top 10) and working knowledge of how these can impact on application solutions.
Monitoring or optimizing the performance, security, backup, recovery or integrity of web server and site technical performance.
Experience of the following technologies:
In Depth ASP.Net, C#.NET , XML and knowledge
DotNet 4.7.2
Integration experience (Web/RESTful services)
XML and JSON messages interaction. Understanding of namespace management and utilisation
SQL and experience with a relational database (i.e. MS SQL 2008 onwards)
SoapUI/Postman
Ability to deliver production-quality software by e.g. paying attention to detail, do extensive unit testing and support quality testing phases.
Experience in object orientation and composition
Knowledge and experience of the following toolsets:
Visual Studio
SQL Server Management Studio 2012 upwards
SOAP/REST Services
IBM MQ Series Client interaction
Knowledge and experience of the following would be a plus:
ASP.NET MVC 5.2.7
Entity Framework 6.2.0
Jquery 3.4.1
Web API 5.2.7
Java Script
CSS
HTML
Xamarin
Personal Profile:
Self-starter, self-motivated, team player
Excellent communication and interpersonal skills
Strong attention to detail
Able to work under pressure and meet deadlines
Attention to detail, analytical thinking.
Finisher, planning and organising, working under pressure, working to high demand deadlines
Own transport and remote access capability to internet that is reliable.