SENIOR SOFTWARE DEVELOPERS - Johannesburg Verfied

Salary Negotiable Johannesburg, Gauteng Johannesburg, Gauteng more than 14 days ago 16-04-2024 12:54:38 PM
Join this dynamic team working within the iGaming space, developing high end solutions in a fast-paced environment. Open communication is key to the success of the teams, all ideas are heard and considered towards the future the projects. They strive to work hard and deliver the best solutions to their r customers.
The Senior Software Developer typically reports to the Lead Developer. The Senior Software Developer, together with the team, is responsible for creating cutting-edge software using the latest development tools and frameworks; that support critical business processes. The Senior Software Developer collaborates with product management and engineering to design, develop, debug, test and implement mobile, desktop, and cloud-based software as well as customer facing APIs. They implement testing and troubleshooting strategies as defined by QA Architects. This role defines software designs that enables software to be portable, maintainable, and replaceable.

Responsibilities:

Software Development:
Develop and maintain robust, scalable, and efficient backend services using C# and .NET Core, ensuring high performance and reliability.

Feature Development:
Collaborate with cross-functional teams to design, develop, and implement new features, ensuring they are well-tested and meet user needs.

Code Quality:
Maintain high standards of code quality, ensuring code is clean, readable, and maintainable. Implement unit tests to support a large and growing user base.

Technical Leadership:
Lead technical design sessions, provide mentorship to junior developers, and contribute to the development of best practices and coding standards.

Database Management:
Utilize T-SQL and relational database design principles to manage and optimize our database systems, ensuring data integrity and performance.

Microservices Architecture:
Design, develop, and maintain microservices-based applications, ensuring scalability and resilience.

DevOps:
Set up and configure CI/CD pipelines using Azure DevOps, ensuring smooth and efficient deployment processes.

Collaboration and Communication:
Actively participate in team meetings, provide constructive feedback, and collaborate with peers to achieve project goals.

CORE KNOWLEDGE/CAPABILITIES:
RESTful API Development using .NET Core (2+ years’ experience)
C# 6.0 (4+ years’ experience)
Elastic Stack (1+ years’ experience)
NodeJS Development Experience (1+ years’ experience)
MS SQL & NoSQL (Couchbase, MongoDB, Azure Cosmos DB)
Frontend Frameworks i.e. (Angular 4+, React)
In-Memory & Distributed Caching (MS SQL, Redis, NCache)
Development Experience in Microservices
Unit Testing

PREFERRED KNOWLEDGE/CAPABILITIES:
CMS Exposure (Kentico, Netlify, Strapi, Ghost)
Understanding of Agile Methodologies (Scrum & Kanban)
Monitoring Tools (New Relic, , Datadog)
Exposure to Azure/AWS/GCP
Exposure to OAuth
ORM Experience (Dapper, EF Core, EF)
Nuget Development
Strong in T-SQL (Joins, Stored Procedures, Views)
/ (Advantageous)
Azure DevOps (Advantageous)
Python (Advantageous
Candidates must have relevant Tech stack experience and have an SA ID