Full Stack Developer - Operations

Job description

Who we are

tails.com is a tech-centric startup, using the power of technology combined with applied nutritional science to change the world of dog food for good.

So more than just a website, our intelligent systems formulate and fulfil bespoke, individually optimised blends of food for each dog, and we evolve that blend over time to match the dog’s constantly changing nutritional needs. Orders are delivered direct to owners' doorsteps every month all across the country; every bag of food that leaves our blending facility is totally unique.

We launched to the public in July 2014 and are well on our way to changing the face of pet food in the UK, with ambitions beyond our shores.

We are well funded too, with investments from across the UK startup scene including Jam Jar (a.k.a the Innocent Drinks founders) and Octopus Ventures.

Tech stack + team

We own the entire tech stack behind tails.com: the website, the blend algorithm, the billing and subscription engines, right through to the intelligent systems that run the physical fulfilment process.

Our main tech stack is mainly Python (Flask + SQLAlchemy + Celery), utilizing Redis, MySQL, and S3, with our live environment is hosted in AWS.

On the fulfilment side of things, our software also requires us to communicate real time with various physical devices, such as label printers, scales, and custom built weighing machines.

Although we’ve been trading for over 3 years we are still a startup, so you'll have a huge impact on the architecture of the tech platform and the shape of the team team as they evolve. We have just started the journey of automating the fulfilment process, and joining the fulfilment team gives you the opportunity to work with our mechanical engineers to further our production line.

Our technical co-founders come from senior hands-on positions at Amazon, Arts Alliance Media, and Zoopla, so we have a great software engineering ethos and it's an excellent environment in which to thrive as a developer. 

Requirements

We’re looking for an easy going, passionate developer who is enjoys working closely with the customer (in this case the warehouse operations team) to spec, build, and maintain projects or features. You will need to enjoy “getting your hands dirty” and going onto the factory floor to test out new features, as well as troubleshoot any live issues.

You'll get involved in all aspects of a project or feature, from pitching in ideas to speccing, building, releasing, monitoring, and everything in between. This includes writing the database tables up to putting together the final page.

Language-wise, we're agnostic. If you're coming from a non-Python background then a willingness to learn Python is a must, but beyond that we're ultimately looking for smart people who enjoy solving real problems and working closely with others. 


In terms of specific skills, we’re looking for someone who:

● has commercial experience with Python or a modern object-oriented language such as Java or C#

● understands software design patterns, and knows when to use them (and when not to)

● Codes in the spirit of readability and maintainability - ie embraces the K.I.S.S. philosophy of development.

● experience working with distributed systems, including message and task queues such as Celery, Resque or Gearman

● is able to navigate a linux server environment on the command line

● can write functional and efficient SQL

● Ability to write fundamental HTML/ Javascript

● production-level experience with at least one modern web application framework, such as Flask, Django, Rails, or Spring.

● strong verbal communication skills 


Ideally, you’d also have:

● experience working within cloud-based platforms such as AWS, GCC or Azure 

● Exposure to socket communication