Senior Software Engineer

Job description

We are looking for an experienced software engineer to help build out our data platform in order to maximise the value we can bring to our customers.

With platform we mean our customer-facing web application (built on top of our data) as well as our (Python-based) toolkit that our professional services team can leverage when serving our customers.

You are thus a bridge between our data augmentation team (which uses data engineering & science to standardise and augment all the data we scrape) as well as our professional services team (consisting of data analysts, BI wizards, data engineers & scientists) that leverages our data.

 

Using your point of view we expect you to:

  • Help improve & evolve our customer-facing web application through which customers can access their insights as well as manipulate their own data. Our application is built on top of a lot of data which makes for some interesting challenges!

  • Provide tooling (such as Python scripts or internal web applications built using Retool) that simplify or even automate tasks done by professional services.

  • Administration & integration of our business intelligence tool Looker, which includes designing & maintaining efficient LookML code that is used as a base for dashboards and looks, helping to create customised email templates, creating secure connections, ...

  • Managing the (data) infrastructure (schedulers, computing frameworks, …) used by professional services for serving our customers.

 
Further information

  • We offer the opportunity for you to work for only 4 days a week if that's what you prefer!

  • Our office is in central Lisbon, at São Sebastião (crossing of red and blue metro lines); we're quite flexible regarding remote work and are 100% remote at the moment and will so until the end of 2021. Afterwards we expect to adopt a hybrid model.

  • You'll be reporting to Simon Esprit our CTO.

  • We scrape around 3TB of compressed data per month (20TB uncompressed), if you'd like to learn how this is done + the challenge that come with that, here's your chance.

  • You'll work with a modern tech stack, including Node, React, Python, Docker, Terraform, AWS, Grafana, Airflow, Snowflake & Looker.

  • You'll work following best practices for software engineering, including code reviews, unit tests, infrastructure-as-code, among others. We're not where we want to be yet, so there's room to add your touch here.

  • We also offer squad rotations, allowing you to spend some time per week doing work for another team in order to learn more about the challenges other teams face.

  • As a company we also offer private health insurance, a solid laptop (MacBook, Linux-friendly or Windows - it's up to you!) and a lot of flexibility.

The application process involves a challenge. That challenge, and the interviews, are all conducted remotely.

Job requirements

This is a rather broad software engineering role which will vary from web development to more backend (Python) development as well as some data engineering.

To cope with this we’re looking for a candidate with the following qualities as a minimum:

  • You speak fluent English as you’ll work in an international team. Moreover you are a strong communicator, both written and verbally.

  • You’ll be part of a team but we need you to be able to organise your own work, we are a small company after all.

  • You should be comfortable with Node, React & Git as our current stack is built around them.

  • You’ve been a software engineer in a professional environment for at least 5 years.

It’s even better when:

  • You also know how to write Python code.

  • You’ve worked in tech startups or scale ups before and have built architectures & or cloud infrastructure up from the ground.

  • You’ve worked with AWS (or Azure or GPC) and have used Terraform to manage your infrastructure.

  • You’ve worked with a (cloud-based) data warehouse such as Snowflake, Redshift, Bigquery, …