Principle Software Development Engineer
We about to embark on a journey involving DevOps, Micro Services and Machine Learning. We also deeply understand why we are doing that. It will not be easy. It will not be a straight path. It requires excellent technical, communicative and organizational skills.
Who are you? You have years of experience in Java. If a person asks you a question you can respond in binary. If your mother asks you what you are up to lately she really understands what you are saying. Every popular framework out there has revealed to you it’s darkest secrets. Even better: you know when these frameworks get grumpy.. By now you have also seen several methodologies in action (Waterfall, RUP, Scrum, you name it) and you know that while there certainly is a holy grail, nobody has ever found it. Perhaps the best thing you ever came across is a good implementation of Kanban?
Technology is what makes you tick, but it needs to be applied to a big challenge to keep you really interested.
What you are actually doing
· Working in an agile environment cooperating with Product Managers and business stakeholders to design, develop and build microservices that would remove some of the legacy dependency.
· Working closely with DevOps to establish an independent continuous integration and deployment approach for these new services.
· Bounce off design ideas among team members to achieve a scalable solution
· Perform the role of a design authority within the team with the ability to perform peer reviews and provide constructive improvements/feedback
· Mentor the junior and graduate engineers within the team on best practices
· Work with the wider engineering team to influence new technology, methods and frameworks.
· Apply best engineering practices with other team members, and maintain code quality across applications.
· Lead and influence team members on technical decisions and design.
· Introduce new technology, methods and frameworks to the software development organisation
? Spring framework
? postgres sql
? Docker, Vagrant
? TDD / BDD
? ELK stack
Experience & Skills
· Degree in computer science or other technical programme with exposure to programming.
· Sound software development experience in a technology organisation with history of delivering at least 7 or more software systems and platforms.
· Experience implementing scalable software systems and platforms.
· Experience with software optimisation.
· Expert knowledge in building REST APIs
· Exceptional problem solving skills
· Familiarity with the workings of retail backend systems i.e order management, inventory management
· You enjoy technology but have a life outside of work, we look for people bringing new experiences to the team.