NCC 02/1/23: Lead Software Developer (C# .NET MS SQL)

Job Reference : NCC02/1/23
Post : LEAD SOFTWARE APPLICATION DEVELOPER (C# .NET MS SQL)
Salary : R495 197.00 PER ANNUM plus 37% in lieu of benefits
Centre : Pretoria, Groenkloof

Purpose of the job
To lead the software application development function within the NCC. To provide expert input into defining the NCC digital architecture and best practice standards.
Key Responsibilities

  1. Coding and development
    1.1 Utilise established development tools, guidelines, and methods for handling development task
    1.2Maintain detailed documentation and project files concerning progress, problems, and required
    changes, and provide regular reports on such to the ICT Team and Management.
    1.3 Develop at all stages of the interface component design from conception through to execution
    1.4 Develop reusable, efficient, and scalable code
    1.5 Writing new code or modifying code to enhance system functionality
    1.6 Develop new software applications.
    1.7 Develop real-time transaction processing systems that can support millions of transactions daily
    1.8 Complete coding & development in line with agreed timelines.
    1.9 Develop/ Build efficient and secure API/integration with other systems (internal & external systems)
    1.10 Lead NCC development and automation projects.
  2. Code Quality Management
    2.1 Adhere to the defined procedures for code management, code reviews, coding standards, naming conventions and security
    standards
    2.2 Perform testing to ensure any changes made to the system are of a high standard and the system hasn’t regressed
    2.3 Perform code reviews to ensure current code meet quality and best practice standards
    2.4 Ensure code version control is in line with best practices standards/
    2.5 Adhere to change control processes
    2.6 Help maintain code quality, performance, and application responsiveness
    2.7 Create unit and integrated system tests to show that the developed functionality works as intended
    2.8 Create and execute functional test scenarios (dev testing)
  3. Analysis & Design
    3.1 Assist in the creation of user story definitions.
    3.2 Analyse system change requests to provide work estimates
    3.3 Convert user stories into a system design that addresses a business problem (fit-for-purpose solutions)
    3.4 Design application user interfaces that are fresh (modern) and exciting
    3.5 Design APIs and external system interfaces for integration with third-party applications
    3.6 Participate in research and innovation, analyze internal systems against current technology trends and provide
    recommendations.
    3.7 Maintain knowledge of current and emerging technologies/products/trends related to digital innovative solutions development
  4. Database Design and Management
    4.1 Design database structures/ architecture to provide for efficient performance and security controls.
    4.2 Monitor system databases to identify and resolve issues.
    4.3 Ensure data integrity and database security.
    4.4 Optimise databases for high performance
    4.5 Write queries to extract data and create reports
  5. Support and maintenance
    5.1 Monitor everyday activities on the system and provide support to end-users.
    5.2 Evaluate and improve application performance and high-availability features
    5.3 Perform root cause analysis on bugs to find and fix the cause of a problem in an integrated system
    5.4 Adhere to system change control process
    5.5 Communicates status and escalates risks and issues appropriately and timeously
    5.6 Ensure application management audit report issues are addressed
    5.7 Compile monthly reports for the area of responsibility and submit them to senior management
    5.8 Resolve problems across multiple platforms (Dev, QA, Production, etc)
    5.9 Attend to support tickets with the agreed SLA targets.
    5.10Collaborate with the infrastructure team(s) to solve technical issues affecting software applications.
  6. Training & People Management
    6.1 Train and mentor junior developers and interns
    6.2 Perform post-development system training for NCC staff
    6.3 Develop system documentation (e.g Manuals & SOPs)
    6.4 Facilitate end-user training
    6.5 Performance management junior developer(s)
    6.6 Participate in the development and implementation of the NCC software application-related policies and procedures.
  7. Financial & Supplier Management
    7.1 Contribute to the ICT budget formulation by determining needs for the area of responsibility.
    7.2 Supplier management for the area of responsibility to ensure the NCC gets value for money for contracted services.
  8. ICT Continuity & Security
    8.1 Participate in the software applications’ risk identification on regular basis.
    8.2 Identify and communicate to management software application project risks.
    8.3 work with the infrastructure team to deploy, test and manage software patches that may affect the NCC software application.
    8.4 Work with Database Administrator(s) to ensure databases are backed up and can be restored.
    8.5 work with the ICT infrastructure teams to design the best fit disaster recovery for the NCC software applications and partake in
    disaster recovery simulations

Minimum Qualifications: NQF 6 National Diploma/ B. Degree: Computer Science/Information
Technology/Information Systems or equivalent qualification with major subjects in software development, Valid driver’s license (code 8)

Minimum Experience : 5 – 7 years experience as a Software Developer with 2 – 3 years experience as a Lead/Senior developer. 2 years’ NetCore API. 3 years experience in HTML, JavaScript and jQuery. A Minimum of 3 years of Microsoft SQL server experience. Bootstrap experience. Understanding WSDL integration, DHA integration, CIPC integration and Banks integration is an added advantage.

Minimum Training: C#, .Net, Microsoft SQL / Microsoft development certification (added advantage), Project Management.

Please apply by submitting an application letter, and attach a Curriculum Vitae, copies of qualifications ( and matric), certificates and ID ( or other supporting documents) quoting the relevant reference number to the Director: Human Resources, 01 Dr Lategan Road, Groenkloof, Pretoria, 0027 . Applications must be submitted as one attachment to the following email address, recruitment@thencc.org.za or alternatively post your application to the following address: PO Box 36628, Menlo Park, 0101

For enquiries regarding the advertisement post, please contact Ms Mapheto at 012 428 7742 or Mr. Makhuvha at 012 428 7731


Failure to follow the above instructions will lead to the application being disqualified.
The successful candidate will be subjected to personnel suitability checks, criminal record, qualification and employment reference checks
It is the responsibility of the applicants with foreign qualifications to ensure that their qualifications are verified by SAQA The NCC is committed to Employment Equity practices, preference will be given to members of the underrepresented groups to achieve the objectives of Employment Equity


CLOSING DATE: 24 FEBRUARY 2023. APPLICATIONS RECEIVED AFTER THE CLOSING DATE WILL NOT BE CONSIDERED.