Geospatial Product Engineer
Working at Thinking Machines
Thinking Machines is a data science startup. Our vision is for the Philippines to become a global hub for data science. To do that, we create data science cultures, one organization at a time.
We’re a company made up of intellectually curious, civic-minded, forever-learning individuals. We believe that great data science products are built with care for people, and that the best way to drive inclusive innovation is to start with a diverse team.
Our field of work is incredibly dynamic, so we want to work with people who are committed to growing with us. We want to hire people who can demonstrate an ability to learn, then provide them with personalized coaching, growth opportunities, and a great working environment to get them to world-class.
As a Geospatial Product Engineer, you will lead the implementation and delivery of the Geospatial Platform’s technical components, which can range from developing an API to access data to rolling out trained models for entire countries. As we work towards hypergrowth for our Geospatial Platform, having a dedicated lead engineer will allow us to develop the tools we need to deliver high-quality, relevant solutions at scale.
You will be working closely with the Geospatial Product Manager to continuously create potential solutions based on external and internal demand, assessing the feasibility, relevance and required effort for any potential idea.
As the main person responsible for designing the architecture of the different tools, you are expected to keep up with the different solutions possible for implementing certain requirements and come up with concrete recommendations based on this knowledge.
You will be working with a team of GIS Specialists, Data Analysts, and ML Researchers, who you are expected to properly delegate tasks to and coordinate with, ensuring smooth implementation of tasks and timely delivery of agreed-upon requirements.
Qualifications and Competencies
We are looking for someone who:
- Enjoys coding - You must be very comfortable with writing and explaining code.
- Has great code hygiene - You are not the only one who will read and work on your code. You must be able to write clean, clear, and maintainable code for the whole team.
- Makes things fast - Time is our most precious resource. You can always throw money at things to make them faster but that’s not very engineer-y.
- Builds sustainably - It’s okay to labor over a new thing once or twice, but if we have to do this a third time, we need to think of how to scale it with less effort. Suggest best practices, create frameworks, build reusable code!
- Has excellent communication skills - You’ll be explaining things during most conversations either internally or externally. Therefore, you need to know how to phrase yourself to be understandable depending on who you’re talking to. Documenting your code is a given, and you also need to write technical documentation in the form of manuals, guidelines, etc.
- Has high initiative - Sometimes, the team won’t know that they need you. You need to be aware of the projects people are working on and support when applicable. You don’t need to know how to use/fix the printer.
Ideal candidates have:
- A minimum of three years of work experience in a software engineering role
- Proficiency in at least one programming language (preferably Python)
- Has experience in front-end development, specifically the following tools:
- Mapbox GL JS, Google Maps, Deck.GL for mapping libraries
- Highly proficient in back-end development, specifically using Google Cloud Platform and its various services, Docker, and workflow management platforms like Airflow or Argo.
- Has experience in working with Geospatial-specific workflows, specifically knowing how to work with the following
- Geospatial data - working with different types of geometries (points, lines, polygons) and projections
- Geospatial file-formats - .tif, .shp, .gpkg
- Geospatial databases - PostGIS, BQGIS
- Geospatial libraries - GeoPandas, Shapely, PyProj, Turf.js
- You can still apply even if they you know counterparts of the tech stack, as long as you can demonstrate that you can switch technologies easily
Huge plus for candidates who:
- Have experience being a tech lead or architect of an actual product
- Have experience managing stakeholders of varying seniority
Benefits and Perks
We offer the following compensation and benefits:
- Competitive salary — the compensation amount is positively correlated with the difficulty of the job, relevant experience, fit, and skill factors.
- Flex-time policy — regular work from home and remote working days are options after probation period. Most members of our team maintain regular office hours of 10am – 4pm, and spend the rest of their workday at home.
- Individual professional development budget— an annual budget for conferences, training courses, books and software is available to sharpen your skills and build new ones to help you grow in your role.
- After two years of continuous service, employees may apply for 30 calendar days paid sabbatical leave
- Full health benefits—generous health insurance package
- Regular 1:1 meetings with the leadership team to discuss career and personal goals, job progress and any questions and concerns
How to Apply
If you fit this profile and we sound like the kind of people you want to work with, fill up the form below with your information and resume. After submitting the form, please expect an email from us within the next 15 minutes, detailing the next steps for your application. If you do not receive an email from us, please contact [email protected]