Senior Software Developer
Location: | Centurion |
Reference: | #JHB000122/RA |
Company: | The Tolcon Group |
Company: Scenivision
Location: Irene, Centurion
Main job purposesTo develop and maintain propriety software applications.
Organogram
Superior 2nd Level: Business Manager
Superior: Product Development & Support Manager
This Position: Senior Software Developer
Subordinate 1st Level: None
Employment specificationEducation and experience (minimum requirements to perform the job):
- School:
- Post School:
- Degree/Diploma in ICT/Computer Science or equivalent
- Experience:
- At least 8 years of related experience in software development.
- Technical Expertise:
- Proficiency in C# programming language: Strong understanding of object-oriented programming (OOP) concepts, data types, variables, and control structures in C#.
- Angular: Experience with Angular framework for building single-page web applications (SPAs) and implementing components, services, and routing.
- Proficiency in WPF and MVVM architecture for building desktop applications.
- Strong experience with .NET Core and .NET Framework (v4.7 and up).
- Web Development: Knowledge of HTML, CSS, and JavaScript for building interactive and responsive user interfaces.
- Database Management: Familiarity with SQL Server or another relational database management system (RDBMS) for data storage and retrieval.
- TypeScript: Proficiency in TypeScript, including its features such as static typing, interfaces, and generics, used for building scalable and maintainable web applications.
- Entity Framework: Experience with Entity Framework or another ORM (Object-Relational Mapping) tool for database interaction and data access.
- Web Services: Knowledge of creating and consuming RESTful APIs or SOAP-based web services.
- Performance Optimization: Skills in optimizing the performance of ASP.NET applications, including minimizing latency and improving scalability.
- Troubleshooting: Ability to diagnose and resolve technical issues in web applications, including performance bottlenecks and runtime errors.
- Familiarity with Design Patterns: Understanding of common software design patterns such as MVC, MVVM, and Dependency Injection for building scalable and maintainable applications.
- General:
- Other:
- Travel: Valid Unendorsed Light Motor Vehicle Driver’s License
Required competencies to meet the job outcomes:- Excellent writing, documenting, and communication skills in English
- Excellent computer literacy skills
- Excellent problem-solving and troubleshooting skills.
- Understanding of networks and network principals
- Excellent knowledge of software programming concepts and techniques
- Comprehensive understanding of the implementation methodologies for the technology being utilized in product development
- DevOps knowledge and experience advantageous
- Knowledge of data backup and recovery principles advantageous
Soft Skills- Attention to detail
- Communication
- Conflict Management
- Adaptability
- Stress tolerance and management
- Planning and organizational
- Time Management
Physical Demands & Work Environment:- Driver of a light motor vehicle on public roads
- Working conditions are normal for an office and Toll Plaza environment
- Work requires extensive work using a computer
- Travelling
Work EnvironmentThe work environmental characteristics are those encountered in a typical office with an IT environment, driving a light motor vehicle on public roads as well as in the open at Toll Plaza’s.
Main Duties & Responsibilities:
Software Development- Develop, create, and modify general computer applications software or specialized utility programs
- Analyse user needs and develop software solutions using industry best-practice principles
- Design and customize software for client use with the aim of optimizing operational efficiency
- Analyse and design databases within an application area, working individually or coordinating database development as part of a team
- Confer with system analysts, engineers, programmers, and others to design systems and to obtain information on project limitations and capabilities, performance requirements, and interfaces
- Modify existing software to correct errors, allow it to adapt to new hardware, or improve its performance.
- Analyse user needs and software requirements to determine the feasibility of design within time and cost constraints
- Consult with customers about software system design and maintenance
- Assist with software system installation and monitor equipment functioning to ensure specifications are met
- Analyse and design databases within an application area, working individually or coordinating database
- Perform R&D activities to find ways to increase performance and functionality and new products that could meet the company’s overall business development strategy and the client’s requirements
- Assist in determining the approach to be utilized in a project implementation
- Participate in every aspect of the development and implementation process to ensure a full understanding of the change implications to current business processes.
- Identify and escalate technical design or specification issues to the Development Manager
- Follows good development practices and software development life cycle methodologies throughout the product development.
Maintenance and Administration- Reporting to management
- Investigation, analysing and resolving system errors pertaining to system software and IT-related hardware
- Liaison and resolution of system problems with third-party vendors/suppliers
- Software Licence Compliance
- System documentation
- Client interface and relations
This Job Specification indicates only the main duties and responsibilities of the position and therefore is not intended as an exhaustive list. Should you not be contacted within two weeks of your application, kindly consider your application as unsuccessful.Posted on 12 Aug 14:06, Closing date 1 Sep