About The Role
A Software Engineer at Carfinance247 is a passionate full-stack technologist; interested in web technologies with skills based in .NET but also encompassing JavaScript and modern SPA (Vue.Js/Typescript/CSS3). The main responsibilities will be to help design and develop new customer facing applications and components, or enhancements to existing code, based on business and project requirements using Vue.Js/Typescript/CSS3 in line with our development / quality control processes and procedure.
Feature switching, A/B testing and continuous integration & delivery are at the core of our development process, so our Software Engineers will also embrace the idea of releasing little and often and iterating on success. We have a strong devops culture, embracing infrastructure as code and encouraging frequent releases into our container-based cluster management system and Cloud based resources.
Knowledge of SQL / T-SQL is beneficial alongside working experience of NoSQL and modern event driven and microservice architectures. Our Software Engineers don’t just write code but take an active role in feature and platform
development by being instrumental to and taking ownership of features from the design
stage right through to its release into production.
Planning and design:
1. Participating in group planning sessions and helping to elaborate requirements.
2. Contributing to the design and architecture of innovative solutions
3. Ensure that the ability to scale the solution is considered within the design of front and back-end systems
Writing code:
4. Developing new features
5. Resolving operational issues
6. Fixing bugs
7. Building greenfield products
Code reviews:
8. Conducting and receiving code reviews
9. Sharing skills and techniques with other members of the team
Managing releases:
10. Handling code changes from inception through to deployment
11. Maintaining the CI/CD pipeline
12. Ensuring code changes are adequately tested and working in production
About You
Essential:
13. Experience of C# and .NET Core
14. Understanding of web applications, HTTP communication and REST
15. Experience with core frontend technologies; Vue.JS, Pinia, Typescript, CSS3, SASS.
Ability to demonstrate innovative, imaginative problem-solving skills with focus on delivering quality outcomes in a timely manner.
16. Experience of writing and maintaining different testing suites
17. Unit tests (xUnit, nUnit etc)
18. Integration Tests
19. Functional Tests
20. Working knowledge of RDBMS and SQL / T-SQL
21. Knowledge of Message brokers and event driven architectures
22. Experience of Version control & CI/CD (Bamboo, GitHub Actions, Azure DevOps)
23. Experience of Microservice architectures
24. Awareness of SOLID coding principles
Desirable:
25. NoSQL database technologies (MongoDB, Cosmos)
26. Docker workflows
27. Container management systems (Kubernetes / Docker Swarm)
28. Knowledge of Cloud solutions (AWS / Azure / Google Cloud Platform)
29. Knowledge of scripting languages (Bash and PowerShell)
30. Administration of Windows and Linux servers