Backend Engineer


Hello there, 

Far down below, in the caves of Stockholm, we are growing flavourful and pesticide-free secrets well hidden from the city life above. To make the best use of the spaces down here the plants grow vertically, which brings us more food in less space and we harvest all year around. The lives of our greens are closely monitored and lovingly nurtured by technology. We make sure to carefully store all data to grow wiser and more attentive to the unique needs of our little ones. And since we're in the middle of Stockholm, our greens find their way up to the local markets faster than you can say "Wow, that's fresh!".

At Urban Oasis we are a collective of thinkers and doers who bonded over the ambition to find new solutions for a sustainable food system. We combine cutting-edge physical infrastructure with the power of our software platform to grow super tasty and nutritious food. By doing so we are working towards our vision - to bring healthy, affordable and sustainable food to the many people.

Now we are looking for two software developers (front and back-end) to join our team and build the brain of our farms, FarmOS. 

The back-end part of FarmOS is about building Urban Oasis farms’ data processing backend and service APIs. FarmOS collects data from a range of sensors in all our farms. This data is processed and transformed to deliver services through API endpoints, used by our FarmOS management service and integration partners. 

The role has a lot of freedom in technology choices. The current base is:

  • A range of JSON RESTful APIs, with security management.
  • Ad hoc data workflow engine, considering upgrading with Airflow, Pulsar, Pachyderm and related.
  • Containers with Docker
  • Programming with Python and Javascript.
  • Testing with language-specific frameworks like PyTest.
  • Deployment management with Terraform.
  • Container orchestration with Nomad, Consul and Vault.
  • Primarily AWS. 

The role can also evolve to include ML engineering, PLC programming and team management and even further into taking responsibility for managing the overall FarmOS development, thus becoming FarmOS Software Lead at UrbanOasis.

You'll be responsible for

  • Developing the FarmOS data and user APIs
  • Build scalable infrastructure, currently using Nomad clusters on AWS
  • Developing internal data pipelines for farming and business processes.
  • Ensure safety of operations with advanced monitoring and reporting,
  • Developing MLOps practices to leverage our data pipelines and to manage the lifecycle of ML models.
  • Ensure secure data operations
  • Collaborating with our front-end developers to create the best user experience
  • If interested, participate into data science and ML model development

The technology stack is entirely built on container technology, so the choice of programming language is pretty open. Currently we use mainly Python and Javascript, as well as Rust.

Required experience

In terms of technologies and skills, we are interested in experience with:

  • Container technology, e.g. Docker.
  • Workload orchestration, e.g. Nomad, Kubernetes.
  • Advanced monitoring, e.g. Prometheus, Graphite.
  • API development, e.g. RESTful and protobuf.
  • Compute layers, e.g. Ray, Celery, Spark, Sidekiq.
  • Data streaming and analysis technologies.
  • S3-like storage.
  • Distributed and time-series databases.
  • Data query languages, e.g. No-SQL, SQL, GraphQL.
  • Programming languages, e.g. Python, Rust, Go, C.
  • Distributed version control, basically Git.
  • GitOps and MLOps frameworks.

Other aspects we look at

  • Top notch communication in English required. Swedish is not mandatory.
  • It is a plus if you have worked within climate-sustainability/horticulture/food production/FMCG previously or have an interest in the future of food or sustainable tech.
  • We have no experience level requirement, as we wish to grow together with you and, well, there is no need for everything right away. So please consider applying even if you only see partial coverage of the above!

The role is a full time position based in Stockholm, starting with a 6-month contract and with the possibility to turn it into a permanent position. Expect talented, motivated, intense, and interesting co-workers. Personal fit with the other members of the team is of utmost importance. 

If this sounds interesting to you we would love to hear from you!