Backend Software Engineer - (Python)

Open Cosmos
Porto, Portugal
Added: March 27, 2024
Working for Open Cosmos

Aim high, go beyond!

At Open Cosmos we are solving the world’s biggest challenges from space, providing businesses, governments and researchers access to more readily available information than ever before - ready for the challenge? Then read on…

Working in the Ground Segment Team

Join our dynamic Ground SegmentTeam responsible for all of the on-ground software used to operate a fleet of Open Cosmos satellites. As a "new space" company, we embrace flexible agile development methodologies and DevOps practices.

Our cloud-native web application, OpenApp, is built with modern technologies like microservices, Kubernetes, and Go. Our image processing pipeline is built on a modern workflow system, with the jobs written in Python. You'll have the opportunity to make a significant impact on the product, from functionality to quality and maintainability. Join us and develop your skills in a modern cloud-based web application environment.

What will you be doing?

As our software solutions, like our data platform DataCosmos, rapidly gain commercial traction, you’ll be responsible for delivering new software modules, through design, implementation, testing, deployment and maintenance, in addition to looking after existing services. Throughout this process, you’ll follow best practices for developing clean code and maintainable software and push for all the team to do the same.

You’ll have the opportunity to be involved in all points of the product development process, standing for yourself in the customer’s shoes and using that understanding to contribute to a roadmap & build software that leads to products that our customers love. Since we are always discovering new requirements for this software, you’ll be continually learning in order to deliver on those requirements.

In pursuit of our shared goal to keep improving, you’ll constantly be evaluating how we work & deliver to bring ideas/suggestions to the team - this can include e.g. platform & observability aspects for better reliability, streamlining our development & testing practices, or features/redesigns of the product itself.

What you need to be successful

At Open Cosmos, we are more interested in what you can do than being dogmatic about your background! We’d love to take a look at your CV even if you’re not sure you tick all the boxes.

You’ll Need

  • Program in the Go or Python programming language, including using common idioms of each language and testing frameworks. For Go, you should be familiar with goroutines and debugging race conditions
  • Design, implement and maintain microservices using Docker, Kubernetes, PostgreSQL, HTTP REST, gRPC and RabbitMQ
  • Build and manage GitLab CI/CD pipelines
  • Follow best practices for developing maintainable and easy to understand software as well as in agile software development methodologies
  • Communicate clearly and concisely, listening effectively, getting to the core of messages and responding appropriately