Senior Software Engineer
This job is no longer accepting applications.
Here at graze we’re on a never-ending hunt for tastier, crunchier, fresher, better snacking. Why? Because we want to help people enjoy healthy living every day. We think snacks made with seriously tasty, wholesome ingredients and lots of imagination is a good place to start.
After all, it’s what’s helped us become one of the market leaders. Now part of the Unilever family, we remain true to our nimble, tech-led beginnings to find ways to grow our multi-channel brand within the healthy snacking market.
We’re a bunch of like-minded people but we’re not all the same. We’re a diverse lot with different experiences and backgrounds but, like our snacks, we combine to make something wonderful. You can be yourself, feel like you belong, as you’d like to belong.
And our technology is no exception. As a tech-powered business from the start, we built a sophisticated platform to power everything from the website and subscription management, to our factory systems and data reporting. The platform is constantly evolving to support our business, and we’re always on the lookout for more great people to help us take it in new directions.
The role, Senior Software Engineer…
We’re looking for an experienced software engineer to join our engineering team team of 5-6 developers. You’ll be designing, building and maintaining the central systems that graze’s business runs on. A lot is changing at graze, so there’s plenty of opportunity to really shape the direction of our systems.
Our engineers are responsible for our operational systems, customer-facing websites, and data warehouse, as well as the infrastructure they all run on. You’ll have the opportunity to learn about and be involved in all these areas.
Our tech (and how it’s changing)...
Our stack is primarily PHP, deployed on Docker into AWS ECS and supported by services and jobs written in various languages such as Golang, Python and node.js.
But as we’ve grown, we’ve started to migrate and split out some of our key systems from this setup so that we can stay scalable and flexible. In operations, a key focus is integrating our custom warehouse system with other business systems with an event-driven architecture. In data, we are moving towards tools like Airflow and DBT. And on our e-commerce websites, we are using Shopify, enhancing it with our own custom themes and plug-in apps.
What you’ll be responsible for...
- Designing and building key features in our operational systems and contributing your expertise to the future technical direction of the platform.
- Working with the technical architect and team lead to design the right solutions and deliver them within our fortnightly sprints.
- Supporting users of our systems, by triaging and resolving any issues that arise.
- Helping iterate on our existing tools and ways of working to continuously improve our software delivery.
- Contributing to code reviews and QA.
- Working closely with other engineers of differing skills and experience.
- Mentoring and knowledge sharing to enable and develop team members.
What we’re looking for in you...
- You’re curious! You can quickly understand and reason about the many systems and processes we have at graze.
- Solid technical knowledge and ability, particularly in designing, building, testing and reviewing solutions.
- You like to work with a team to define and solve problems, but you can also commit and deliver your work independently.
- A personable manner and 'communication first' mentality.
- You enjoy working with end users to build and deploy quality solutions that are valuable to them and the business.
- Self-motivated and calm under pressure. You like to get issues resolved and projects finished.
Experience (you’ll probably have most of these)
- Server-side engineering experience and familiarity with object-oriented design patterns.
- Familiarity with data storage solutions e.g., MySQL, DynamoDB.
- Experience designing, building, testing and deploying web applications, services and APIs.
- Experience integrating software with third-party systems.
- Experience of building or managing development environments and tools would be helpful but is not essential.
- Experience of using cloud services such as AWS would be helpful but is not essential.
What we expect in the first 6 months...
- Gain a good understanding of graze’s technology and business processes.
- Be able to identify areas of improvement and progress changes.
- Be instrumental in scoping and specifying changes to the systems.
- Gain enough familiarity with the existing codebases that you can comfortably make and review significant changes.
- Be able to respond to, triage and fix most operational issues.
- Build strong relationships with your team and key people you work with.
What we can offer you...
- A competitive salary, 25 days holiday a year (plus bank holidays), BUPA private medical insurance and pension scheme.
- One day a year to use for volunteering, and one to use for a health day (both of your choosing).
- Fully remote working until it is safe to return to our offices, and then up to 3 days per week working remotely when we are back in our Kingston-upon-Thames base.
- Time and support in attending relevant meetups and conferences.
- Hacker Time, one day per month dedicated to hacking away (no distractions!) on whatever you’d like, learning a new language, trying out some new tech, or open sourcing some code.
- Clubs, team breakfasts, Friday drinks and plenty of free snacks! (once we are back together!)
- Plenty of opportunity for learning about and presenting on technical subjects, in informal and conference-style environments both internally and externally.
Your application has been successfully submitted.