C# . Net Full Stack Developer
Reverside C# . Net Full Stack Developer
Summary
Reverside, an IT services provider, is hiring a senior Full Stack Developer in Johannesburg to own the full development lifecycle of complex web applications — design, architecture, coding, testing, deployment and mentoring junior engineers. Core stack: C# (.NET 8/Core), Angular, Next.js/NestJS, MongoDB and SQL Server/Oracle, with Azure DevOps, Docker/Kubernetes and CI/CD.
Reverside is an
established it services provider focusing on delivering high-quality software
development, it resourcing, digital transformation, and systems support
solutions. We are always looking for skilled professionals to join our growing
team and contribute to innovative technology projects across various
industries.
Software
development and implementation:
- Lead the design, development, and implementation
of complex web applications.
- Utilize your expertise in programming languages,
frameworks, and libraries to deliver high-quality, scalable, and maintainable
solutions that meet business requirements.
Technical
design and architecture:
- Take a leading role in the design and
architecture of software systems, ensuring scalability, performance, and
reliability.
- Collaborate with cross-functional teams to
define technical requirements, establish best practices, and drive technical
innovation.
Code review
and quality assurance:
- Conduct comprehensive code reviews to ensure
code quality, adherence to coding standards, and best practices.
- Mentor junior engineers, provide constructive
feedback, and help drive continuous improvement in code quality and
maintainability.
Technical
leadership and collaboration:
- Provide technical guidance and leadership to a
team of engineers.
- Foster a collaborative and inclusive work
environment, promoting knowledge sharing, mentorship, and teamwork.
- Collaborate with product managers, designers,
and other stakeholders to ensure successful project delivery.
Troubleshooting
and problem-solving:
- Investigate and resolve complex technical issues
that arise during the software development lifecycle.
- Utilize advanced problem-solving skills to
diagnose and address software defects, performance bottlenecks, and system
failures.
- Provide guidance and support to team members in
resolving technical challenges.
Research and
innovation:
- Stay up-to-date with emerging technologies,
industry trends, and best practices. Conduct research and evaluate new tools,
frameworks, and methodologies to drive innovation and enhance development
processes.
- Identify opportunities for process optimization,
automation, and tooling enhancements.
Key Skills
- Angular (Primary requirement)
- C# (.NET 8, .NET Core 8)
- Next.js
- MongoDB
- SQL Server/ Oracle databases
- REST API Development
- Unit Testing (Jest, Karma, NUnit, xUnit)
- Azure & Azure DevOps
- Docker & Kubernetes Core Competencies
- ADO
- CI/CD Pipeline
- NestJS
Education
and experience:
- Bachelor's or Master's degree in Computer
Science, Software Engineering, or a related field.
- Extensive experience in software development,
including significant hands-on experience in building and delivering web
applications (5+ years)
- Demonstrated experience in leading software
development projects or teams.
System design
and architecture:
- Strong understanding of software design
principles, architectural patterns, and system
- Experience in designing and architecting
complex, distributed, and highly available systems.
- Familiarity with cloud platforms (AWS, Azure,
Google Cloud) and microservices architecture.
Quality
assurance and testing:
- Proficient in implementing and driving software
testing strategies, including unit testing, integration testing, and automated
testing.
- Experience with continuous integration and
deployment (CI/CD) pipelines.
- Strong focus on code quality, performance
optimization, and security best practices.
Leadership
and collaboration:
- Excellent communication and interpersonal
skills, with the ability to effectively lead and collaborate with
cross-functional teams.
- Experience in providing technical mentorship,
coaching, and guidance to junior engineers.
- Demonstrated ability to drive technical
initiatives and influence technical decision-making
Education and experience:
- Bachelor's or Master's degree in Computer Science, Software
Engineering, or a related field.
- Extensive experience in software development, including
significant hands-on experience in building and delivering web applications (5+
years)
- Demonstrated experience in leading software development projects
or teams.