Sr. Software Engineer
Welcome to Planet. We believe in using space to help life on Earth.
Planet designs, builds, and operates the largest constellation of imaging satellites in history. This constellation delivers an unprecedented dataset of empirical information via a revolutionary cloud-based platform to decision-makers in commercial, environmental, and humanitarian sectors. We are both a space company and data company all rolled into one.
Customers and users across the globe use Planet’s data and machine learning-powered analytics to develop new technologies, drive revenue, power research, and solve our world’s toughest challenges.
As we control every component of hardware design, manufacturing, data processing, and software engineering, our office is a truly inspiring mix of experts from a variety of domains.
We have a people-centric approach toward culture and community and we are iterating in a way that puts our team members first and prepares our company for growth.
Join Planet and be a part of our mission to change the way people see the world.
Planet’s Search team is developing systems to store and access imagery from our constellation of satellites. These systems are primarily responsible for providing external customer access to the continuous feed of imagery we receive from the satellites.
This role will be responsible for the infrastructure and software making up our search, storage and indexing layer providing access to imagery for our consumers. Our tech stack is Go, Python, Elasticsearch, BigTable, Postgres, and Kubernetes running on Google’s Cloud. Your contributions will enable any number of new techniques to understand our changing world.
The Search team is highly distributed and you will thrive in an environment of remote work and asynchronous communication. You’re expected to have strong written communication skills and be able to develop working relationships with coworkers in locations across several time zones.
- Work to improve the reliability and scalability of our distributed search platform
- Work to enable efficient and rapid access to our variety of new and growing data sets.
- Build services in Go and Python to provide schema-management, publishing and query APIs.
- Manage underlying persistence layers in Bigtable and indexing in Elasticsearch.
- Own operation of services by measuring performance, creating alerts, runbooks, and responding to incidents and performance anomalies
- Participate in an on-call rotation in support of our team’s services.
- Experience building services that leverage cloud-based infrastructure and tooling such as AWS or GCP
- Experience working with a distributed team across multiple time zones
- History of working with monitoring tools like Nagios, New Relic and Graphite (or equivalent)
- Comfortable with using Docker containers in a production environment
- Experience with SQL databases (Postgres or MySQL) and NoSQL databases (e.g. Bigtable, Redis, HBase, etc.), and understand when to use each
- Experience with a large shared codebase and Continuous Integration and Deployment workflows and tooling
- Comfortable with distributed systems concepts, reasoning about concurrency and making consistency tradeoffs.
- Experience working with and building services around large-scale data storage systems
- Deep understanding of the Linux operating system
- Familiarity with geospatial concepts, and how they are applied in popular open source software like GEOS/GDAL.
- Experience with containerized build and deployment processes and container orchestration systems like Kubernetes.
Education & Experience:
- Bachelor or Master degree in Information Systems, Computer Science, Engineering or equivalent job-related experience with 4+ years experience as a Software Engineer.
- Excellent interpersonal and communication skills, written and oral