Software Engineer Back End
Job Overview
- Postal Code 1000
- Salary Offer R880k
The position
System Development:
Design and maintain technical system requirements based on business needs.
▪Develop backend applications based on approved specifications and prototypes.
▪Develop, test, debug and maintain application code.
▪Create and maintain technical and support documentation.
▪Integrate existing as well as new applications, features and services on the online streaming platforms.
▪Contribute to the entire application lifecycle, focusing on design and requirements validation, coding and debugging, testing, deploying.
▪Write understandable code with tests to develop functional backend applications in line with industry best practices and principles.
▪Integrate and instrument application performance and health metrics to monitoring and logging services to enable effective troubleshooting and support of applications.
▪Troubleshoot incidents, identify root cause, fix and document problems, and implement preventive measures
▪Continuously assess and improve application performance and stability.
▪Build and deliver on technology roadmaps that help sunset legacy applications and keep up with the demands of the growing and evolving business
Collaborate with Front-end Teams to integrate customer-facing elements with backend services.
▪Build reusable code and libraries for shared use across multiple teams.
▪Collaborate with Product, developers, UX designers and system administrators to identify new features and improvements.
▪Research emerging technologies and propose the adoption of such technologies that will benefit the department
▪Maintain the usage of AWS Cloud services and implement cost-saving strategie
Qualifications
▪ A Degree in IT or Computer Science
▪ Certification in Cloud Application Design and Development (advantageous)
Experience
▪ A minimum of 5 years’ experience in software engineering
▪You have exceptional knowledge of Webservice, Java, Nest JS, REST, AWS, C# .Net (advantageous)
▪Good experience working on the spring framework
▪Tomcat, Apache
▪CI/CD knowledge
▪Experience with the likes of Jenkins, Maven
▪Test Driven Development (TDD) and/or Behavior Driven Development (BDD)
▪Understanding of Agile methodologies, SCRUM experience would be advantageous.
▪RDBMS experience (MsSQL)
▪NoSQL knowledge would be a definite advantage (MongoDB)
▪Caching Technologies (Redis)
▪Message Queues (RabbitMQ) and Event Driven Architecture
▪Code Repository (Git/GitLab)
▪Containerization (Docker)
▪Understanding of AWS Services like S3 Buckets, Lambdas, CDK, CloudFront, CloudWatch, ECS, DynamoDB, Elastic Search, Kinesis, SQS
▪Exposure to full life cycle systems development
▪Understanding of Industry recommended Software Engineering Principles