Senior Software Engineer

Remote /
Engineering /
The Company

Descartes Labs helps organizations whose success depends on scientific analysis of observable, physical world events. We are the leading provider of geospatial analytics that create actionable intelligence by strengthening our customers’ proprietary data with models of the earth. Our solutions create new sources of environmental sustainability and operational advantage and foresight for agriculture, CPG, mining, and government users by combining machine intelligence and domain expertise into a complete operational solution.

Descartes Labs is proud to be a remote-first, deliberately distributed organization that recognizes that people have different needs and motivations for building a life and career that matters and works for them. For this reason, we are open to our employees working from any location, in a way that enhances their well-being, productivity, and role. We focus on helping our employees produce positive outcomes and we recognize that the path to getting there will look different for different people.

The Role

As a Senior Software Engineer you will be responsible for the design and continued development of our cloud-native geospatial analysis platform, building and maintaining scalable services and the implementation of new architecture and tools. Your contributions will span many layers, from high-performance virtual file systems and cloud infrastructure to API endpoints and pragmatic client libraries.

Your Impact

    • Develop software to support advances in earth science and prediction to unlock valuable insights
    • Implement highly scalable distributed systems in a cloud environment
    • Research and design innovative solutions to empower our users
    • Improve our infrastructure for the build, test, deploy and monitor lifecycle
    • Implement process and development standards that accelerate the team
    • Help foster a healthy and collaborative environment
    • Define and measure engineering metrics, and find mechanisms to improve them

What You Bring

    • 7+ or more years of experience in a fast-paced software development environment
    • Production experience with highly scalable distributed systems in a cloud environment
    • Bachelor’s degree in computer science, software engineering, or related field
    • Experience working with remote team members

Our Stack

    • Python, C++, Rust, Go
    • Tensorflow, Flask, NumPy, SciPy
    • Kubernetes, Istio
    • Google Cloud Platform
    • Microservice architecture, GRPC
    • Firestore, Elastisearch, Redis
    • Git, Bazel, Drone and Spinnaker
    • GDAL, S2, Proj4

Who You Are

    • Curious. You are always exploring and experimenting, interested in why and how, seeking not only to understand but to make work and the world better. You enthusiastically share your learning with others and actively seek information and knowledge. 
    • Conscientious. You are determined, always keep your promises, and are forward thinking. Principled and integrous, you take your commitments seriously.
    • Humble. Unpretentious and self-aware, you cultivate compassion for others and take responsibility for your mistakes. Egoes are barriers to doing the best work and always learning. 
    • Open and Inclusive. You are receptive and interested in new ideas and perspectives, even when those perspectives don’t agree with your views. You value and respect difference and create ways for all people to contribute to the organization. 
    • Collaborative. You know it takes a team to get anything accomplished and you actively and inclusively work across the organization. You listen intently and openly and are always focused first on creating the best results. 
    • Adaptable. You are able to navigate changing circumstances and environments with ease and approach uncertainty with enthusiasm, while inspiring others towards effective goal setting and accomplishment. 

Our Interview Process

    • Qualified candidates will be invited to schedule a 45-minute screening call with one of our recruiters
    • Depending on the outcome of the screening call, candidates will be invited to schedule a 60 minute interview with our Engineering Hiring Manager
    • After that, candidates will be invited to schedule a 60 minute paired programming exercise with a member of our technical team
    • Finally, candidates are invited to interview virtually  with 2-3 additional members of the Engineering/technical team

Top Reasons To Work At Descartes Labs

    • We pride collaboration over ownership, iteration over perfection, principles over rules, and discussion over directives
    • We’re using the world’s top technology to solve the world’s largest problems with a strong focus on sustainability, environment, and impact science
    • We look at Descartes Labs as a work environment where people are included, treat their colleagues with professional regard and respect, and thrive as a result
    • We’re a highly collaborative company that constantly promotes success through teamwork
    • We strongly encourage and enjoy a flexible work environment
    • Descartes Labs offers a generous compensation package including a competitive salary; choice of medical plan; dental, life, and disability insurance; a 401K plan; paid holidays and flexible paid time off
You belong here! If your experience and interests match with some of the above, we want you to apply. Nobody is an expert on all or even parts of our stack. When you join our team you will deepen and widen your knowledge as you grow with us over the next few years.
Descartes Labs is committed to building a diverse community and we embrace equal opportunity in a serious way. We strive to be a team with a variety of backgrounds, perspectives and skills. Scientific discovery is in our DNA and the more inclusive we are, the better our work will be; diversity fuels innovation!
Accommodations will be provided as requested by candidates during all aspects of our interview process.