Responsibilities:
- Delivering code that is functional, understandable, maintainable and testable.
- Working closely with analysts, documenters and testers.
- Automated testing of features developed.
- Delivering technical documentation as and when required.
- Acting as a mentor to all team members on their assigned project tasks.
- Participating in training design, documentation and delivery efforts.
- Participating in Agile team meetings.
- Utilising version control, build, continuous integration solutions and code quality tools as required.
Qualifications:
- BSc in Computer Science or equivalent.
Skills / Experience:
- 5+ years of Software Development experience in a variety of programming languages.
- Strong communication skills and interest in a pair-programming environment.
- Passion for growing your skills, tackling interesting work and challenging problems.
- Experience in the following:
- C# 6/7 | .Net Core | SQL
- OO principles and design fundamentals
- Design patterns | Design principles e.g. SOLID
- TDD | Git | ALM e.g. Azure | XML
- Experience in the following would be ideal:
- WCF | JavaScript / JSON
- Agile e.g. Scrum or Kanban
- Continuous delivery practices to improve software delivery speed.
- Use TDD to ensure the software you build is quality.
- Creating large-scale distributed systems out of Microservices.
- Utilising DevOps tools and practices to build and deploy software.
- Object-Oriented technology is required.
- Experience working with Agile, Lean and/or Continuous Delivery approaches such as Continuous Integration, TDD, Infrastructure as Code, etc., is necessary.
- Knowledge of cloud technology such as Azure, Docker or Kubernetes is a plus.
Desired Skills:
- C# Developer
- Azure
- SDLC