Intermediate Full Stack Developers (strong C# and Angular skills) -Job Description
Our client is a dominant local SaaS provider in the Customer Experience industry with a growing international presence. Using modern technology, research methods and analytical techniques
The developer will be responsible for building and maintaining our client’s product and systems platform and must be capable of contributing at every level of the SDLC, including:
- Critically analyse business requirements in order to produce a technical design and collaborate with business and system analysts on issues and challenges
- Perform system and data architecture design – designing for performance, scalability, maintainability and cross-browser / cross platform UI
- Develop and maintain systems that achieve the business goals and focus on quality and testability – Drawing up test plans, understanding scenarios and furthering quality automation goals – Planning of configuration management and deployment
- Maintaining production systems and software
- Performing continuous analysis and improvement on existing development processes and procedures
- Engage in active knowledge-share, code review and team mentoring where appropriate
The following key skills and experience will be looked for in the candidate:
- At least 5 years of experience in end-to-end application development (data model, architecture, database, application and operational components).
- A relevant 4-year university degree, preferably in Software Engineering or Computer Science.
- Complete understanding of and experience in using Microsoft .NET and object-orientated C# for systems and web development.
- Experience in modern client-side web frameworks, such as AngularJS or Angular.
- Complete understanding of and experience in Microsoft SQL Server with excellent SQL query abilities.
- Complete understanding and experience in data modelling and architecture for optimal database structure design.
- Understanding UI design and how to implement a UI to optimise the end-user experience.
- Must have excellent analytical skills and the ability to identify problems, gaps and contradictions.
- Able to pick up new skills and knowledge through self-learning.
- Able to understand the need for trade-off decisions and knowing how to make the correct trade-offs in collaboration with their team.
Technologies and practices
The ideal candidate will need solid experience in the following technologies and practices:
- Either .NET Core 3.1 or .NET Framework 4.7.2 (we’re migrating to core)
- Design patterns and S.O.L.I.D. principles
- Strong understanding of object-orientated principles and practical implementation thereof • Asynchronous coding practices using the async modifier and await keyword • Unit testing and test-driven development (https://en.wikipedia.org/wiki/Unit_testing) • Test frameworks like NUnit, xUnit, and MSTest
- Dependency injection containers such as Autofac
- REST API concepts and best practices
- Either ASP.NET Core 3.1 or ASP.NET Web API 2 (we’re migrating to core)
- MongoDB 4 and NoSQL principles
- MongoDB .NET Driver 2
- Microsoft SQL Server 2012+
- Entity Framework 6
- Message queuing architectures
- Message patterns (command, event, request and response)
- Idempotent message handling
- AngularJS 1.6
- Angular 9 and the Angular CLI (we’re migrating to Angular 9) • HTML and CSS
- Bootstrap 3+
The following technologies are beneficial but optional:
- NServiceBus 7
- RabbitMQ 3.8
- Automapper 9
One of the following degrees will be required:
- BSc, Bsc Eng
- The individuals will be required to have the following experience:
- At least 5 years development experience in C# .NET
- At least 3 years solid experience in a client-side web framework such as AngularJS or Angular
To apply for this job please visit www.jcmconsult.co.za.