Position: C# Developer
Location: Pretoria
Salary: Negotiable
Job Summary:
We are looking for a skilled C# Developer who prides themselves in ensuring that the group of companies have access to reliable and bespoke software to do business, through applying unrivaled mentorship and guidance to their team. Someone who contributes to the development of software, web, and mobile applications that facilitates the achievement of business outcomes and improves business efficiencies and processes through leveraging technology. Coupled with their passion and enthusiasm relating to all things IT, they will monitor and maintain these programs ensuring everything works, like clockwork!
Key accountabilities:
Prepare specialized code as required by the product definition to enable application development;
Contribute technical expertise to requirements analysis to enhance the quality of the solution design;
Complete testing and gathering of feedback to improve the quality and reduce the operational risk of the developed application;
Undertake post-release activities to develop a base of knowledge to be incorporated in future build and release cycles;
Provide 3rd level application support and problem resolution to minimise the impact of application related service outages.
Key duties include:
Work closely with business staff to ensure solutions adhere to client standards and fit their strategic enterprise architecture;
Define and manage non-functional requirements, including working with others to ensure these requirements have been met;
Define and organize development tasks and apply accurate estimation of these tasks;
Work closely with members of the development team to ensure that the software design and implementation meet the architectural goals and quality standards;
Provide support to the business analysts, and other project team members, during functional requirements definition to ensure that functionality is both technically achievable and feasible within the project constraints;
Identify and own technical project risks and issues, including owning mitigation activities and resolution of issues;
Undertake other duties as directed by line managers commensurate with the post;
Actively seek opportunities to contribute improvements to the Client's applications;
Mentor and guide junior members of the development team whilst broadening their technical knowledge (training);
Act as a focal point of expertise on key technologies or skills;
Implement development projects of all descriptions (either IT related or not);
Liaise with Development Team, Test Analysts, and Business Analysts for technical development and improvements;
Maintain and enhance projects;
Maintain and enhance Legacy systems.
Skills and Attributes required:
Resilient and able to work in an organisation that is undergoing change due to growth;
Good organisational skills, task/project-driven, deadline-oriented;
Good communication and interpersonal skills;
Good decision-making skills;
Good problem-solving ability;
Ability to prioritise and work under pressure;
High attention to detail;
Productivity and time management;
Team Player and the ability to be an excellent leader;
Experience and Qualification required:
Experience in the full software development lifecycle;
Experience in architecting software solutions with demanding non-functional requirements such as performance, high availability, reliability, security, etc;
Extensive development experience;
Knowledge of a wide range of open source projects and components (Preferred);
Excellent knowledge and understanding of object-oriented design techniques and patterns;
Knowledge of several standard software development methodologies;
Knowledge of integration patterns and technologies;
Client interaction experience, including experience in running workshops with clients;
Experience working in an agile environment (Preferred);
Knowledge and/or experience with microservice architectures (Preferred);
Knowledge and/or experience in systems such as service bus (Preferred);
Experience in web technologies such as angular (Preferred);
Experience in Microsoft Azure and Kubernetes;
Exposure to Agile development methods is a bonus.
Essential Technical Experience
Front-End Skills (minimum)
Angular or Ionic
Bootstrap or Material.io
Html
JavaScript:
Ajax
Exposure to Client-size MVC Frameworks
JQuery
CSS2 and CSS3
Debug tools such as Firebug / Chrome Dev Tools
Cross Browser/Platform development
Consuming Data formats such as JSON/XML
Back-End Skills (minimum)
C#
RESTFul API or MVC
Working knowledge of RDBMS like MSSQL
Securing web applications
Dependency Injection, IOC
Test driven development
IIS
Message Bus experience
OWIN experience
CORS experience
Service bus
Other skills (minimum)
Understanding of OOP
Visual Studio
Integration experience between front/back end
Exposure to Version Control with Git/Subversion /Bitbucket and branching strategies
Clean code
Knowledge of multi-threaded, multi-tiered applications
Experience with Service Orientated Architecture
ReSharper
Domain Driven Design
Build and continuous integration frameworks like TeamCity, octopus
Team Foundation Server or DevOps
Distributed Systems design
Job Type: Full-time
Pay: R45000,00 - R55000,00 per month
Education:
Bachelors (Preferred)
Experience:
C# Developer: 3 years (Required)
Location:
Lynnwood, Gauteng (Preferred)
#J-18808-Ljbffr