Descartes Underwriting · Software Engineer
Updated · 2026-10-02

Descartes Underwriting Software Engineer
Interview Guide

THE 60-SECOND BRIEF

As a Software Engineer at Descartes Underwriting, you sit at the intersection of high-stakes corporate insurance and cutting-edge scientific modeling. Your mission is to build the technical infrastructure that allows the company to provide parametric insurance—a revolutionary model that triggers rapid payouts based on real-world data, such as weather events or natural disasters. You are not just writing code; you are building the resilience of global businesses against climate risk. The role is inherently multidisciplinary. You will work alongside climatologists, data scientists, and insurance veterans, translating complex physical models into performant, reliable software.

This guide is scoped to a Software Engineer candidate at Descartes Underwriting.

Descartes Underwriting candidates report 3 rounds over 3-5 weeks. The stages below are what candidates describe, not a published process.

PythonTime ProfilingPython Performance Optimization

16 min read

Browse Software Engineer questions

See the practice prompts

13Practice promptsAcross five skill areas

As a Software Engineer at Descartes Underwriting, you sit at the intersection of high-stakes corporate insurance and cutting-edge scientific modeling. Your mission is to build the technical infrastructure that allows the company to provide parametric insurance—a revolutionary model that triggers rapid payouts based on real-world data, such as weather events or natural disasters. You are not just writing code; you are building the resilience of global businesses against climate risk. The role is inherently multidisciplinary. You will work alongside climatologists, data scientists, and insurance veterans, translating complex physical models into performant, reliable software. Whether you are refactoring functional code into object-oriented patterns, optimizing Python computation pipelines, or automating CI/CD workflows, your work directly influences the speed and transparency of the insurance process. It is a position for those who thrive on technical rigor and seek to apply their engineering skills to tangible, real-world challenges. ##### Tip The role demands a blend of scientific curiosity and software craftsmanship. Be prepared to explain how your code handles data at scale, as the precision of your models directly impacts the company’s financial commitments.

01

Initial Discovery Calls

reported

Conversations to assess high-level motivation and fit for the role.

What to demonstrate

  • Conversations to assess high-level motivation and fit for the role
  • Depth in Python

How to prepare

  • Answer aloud and timed: How would you profile and optimize a piece of slow-running Python code that performs heavy mathematical calculations?
  • Answer aloud and timed: Explain the trade-offs between functional and object-oriented programming patterns in the context of a scientific simulation.
Descartes Underwriting Software Engineer candidate reports ↗
02

Take-Home Project

reported

Complete a practical project that serves as the primary artifact for technical evaluation.

What to demonstrate

  • Complete a practical project that serves as the primary artifact for technical evaluation
  • Depth in Python

How to prepare

  • Answer aloud and timed: How do you handle large-scale data ingestion and ensure the integrity of the data being fed into a risk model?
  • Answer aloud and timed: Describe a situation where you had to refactor legacy code to improve performance or maintainability.
Descartes Underwriting Software Engineer candidate reports ↗
03

Technical Interview

reported

Review and discuss the take-home project, focusing on code quality, documentation, and design decisions.

What to demonstrate

  • Review and discuss the take-home project
  • Focusing on code quality, documentation, and design decisions

How to prepare

  • Answer aloud and timed: How would you design a microservice to handle real-time data from an external API and trigger a payout event?
  • Answer aloud and timed: What is your approach to containerizing a scientific engine using Docker for production deployment?
Descartes Underwriting Software Engineer candidate reports ↗

PracHub editorial advice for the preparation topics above.

01

Prioritize Code Style

As seen in previous feedback, a candidate's "coding style" can be a deciding factor. Ensure your submission is clean, readable, and well-documented.

02

Be Ready for Code Reviews

The technical interview is essentially a collaborative code review. Don't be defensive; treat it as an opportunity to show how you handle feedback.

03

Understand the Business

Research parametric insurance before your first interview. Showing you understand why the company exists will set you apart.

04

Practice Your French and English

Since the role requires fluency in both, be prepared to switch between them comfortably during the interview.

Choose a category, try a prompt, then open its approach, worked solution or follow-up when you need it.

9 technical prompts0 include a worked solution

How would you profile and optimize a piece of slow-running Python code that performs heavy mathematical calcul

medium
Technical and Scientific Coding

How would you profile and optimize a piece of slow-running Python code that performs heavy mathematical calculations?

Approach
  1. Restate the input: its shape, its size, and what is guaranteed about it.
  2. Name the brute-force solution and its complexity before improving on it.
  3. Choose the data structure from the access pattern, not from familiarity.
  4. State the target complexity and say which constraint rules the naive version out.
Follow-up
  • How does this change if the input no longer fits in memory?
  • What is the worst case, and how likely is it on real data?

Explain the trade-offs between functional and object-oriented programming patterns in the context of a scienti

medium
Technical and Scientific Coding

Explain the trade-offs between functional and object-oriented programming patterns in the context of a scientific simulation.

Approach
  1. Restate the input: its shape, its size, and what is guaranteed about it.
  2. Name the brute-force solution and its complexity before improving on it.
  3. Choose the data structure from the access pattern, not from familiarity.
  4. State the target complexity and say which constraint rules the naive version out.
Follow-up
  • How does this change if the input no longer fits in memory?
  • What is the worst case, and how likely is it on real data?

Describe a situation where you had to refactor legacy code to improve performance or maintainability.

medium
Technical and Scientific Coding

Describe a situation where you had to refactor legacy code to improve performance or maintainability.

Approach
  1. Restate the input: its shape, its size, and what is guaranteed about it.
  2. Name the brute-force solution and its complexity before improving on it.
  3. Choose the data structure from the access pattern, not from familiarity.
  4. State the target complexity and say which constraint rules the naive version out.
Follow-up
  • How does this change if the input no longer fits in memory?
  • What is the worst case, and how likely is it on real data?

Built from the rounds and topics Descartes Underwriting candidates report.

Small steps. Visible outcomes.0 / 7 completed
ONE WEEK · YOUR PACE

Prepare, practise & reflect

One practical outcome each day. Spend longer where you need it.

0 / 7 done
01Map the Descartes Underwriting loop
  • Write out the reported sequence: Initial Discovery Calls, Take-Home Project, Technical Interview.
  • For each round, write one sentence on what it is judging, from the description above, and mark the one you are least ready for.

Deliverable: A one-page map of the 3 reported rounds, with the weakest marked.

02Work Python
  • Spend the session on Python, which Descartes Underwriting candidates report being tested on.
  • Write one worked example in Python and time yourself on it.

Deliverable: One timed worked example in Python.

03Work Time Profiling
  • Spend the session on Time Profiling, which Descartes Underwriting candidates report being tested on.
  • Write one worked example in Time Profiling and time yourself on it.

Deliverable: One timed worked example in Time Profiling.

04Work Python Performance Optimization
  • Spend the session on Python Performance Optimization, which Descartes Underwriting candidates report being tested on.
  • Write one worked example in Python Performance Optimization and time yourself on it.

Deliverable: One timed worked example in Python Performance Optimization.

05Answer out loud: Technical and Scientific Coding
  • Answer aloud, timed: How would you profile and optimize a piece of slow-running Python code that performs heavy mathematical calculations?
  • Answer aloud, timed: Explain the trade-offs between functional and object-oriented programming patterns in the context of a scientific simulation.

Deliverable: Spoken answers to 2 reported Technical and Scientific Coding question(s), under time.

06Answer out loud: System Design and Architecture
  • Answer aloud, timed: How would you design a microservice to handle real-time data from an external API and trigger a payout event?
  • Answer aloud, timed: What is your approach to containerizing a scientific engine using Docker for production deployment?

Deliverable: Spoken answers to 2 reported System Design and Architecture question(s), under time.

07Answer out loud: Behavioral and Cultural Fit
  • Answer aloud, timed: How do you balance the need for rigorous, slow-moving insurance standards with the fast-paced nature of a tech-first company?
  • Answer aloud, timed: Tell us about a time you had to mentor a junior engineer—how did you approach the feedback process?

Deliverable: Spoken answers to 2 reported Behavioral and Cultural Fit question(s), under time.

Expand any day for tasks and deliverables. Your progress is saved on this device.

Behavioural rounds judge the decision you made and what it cost.

How do you handle large-scale data ingestion and ensure the integrity of the data being fed into a risk model?

medium
Technical and Scientific Coding

How do you handle large-scale data ingestion and ensure the integrity of the data being fed into a risk model?

Approach
  1. Pick a story where you made the decision, not one where you watched it.
  2. State the situation in two sentences and spend the rest on the reasoning.
  3. Give the blast radius: what could have broken, and what you measured.
  4. Name the disagreement and how you resolved it with evidence.
Follow-up
  • What would you do differently if you ran that again?
  • How did you know your change caused the improvement?

How do you balance the need for rigorous, slow-moving insurance standards with the fast-paced nature of a tech

medium
Behavioral and Cultural Fit

How do you balance the need for rigorous, slow-moving insurance standards with the fast-paced nature of a tech-first company?

Approach
  1. Pick a story where you made the decision, not one where you watched it.
  2. State the situation in two sentences and spend the rest on the reasoning.
  3. Give the blast radius: what could have broken, and what you measured.
  4. Name the disagreement and how you resolved it with evidence.
Follow-up
  • What would you do differently if you ran that again?
  • How did you know your change caused the improvement?

Tell us about a time you had to mentor a junior engineer—how did you approach the feedback process?

medium
Behavioral and Cultural Fit

Tell us about a time you had to mentor a junior engineer—how did you approach the feedback process?

Approach
  1. Pick a story where you made the decision, not one where you watched it.
  2. State the situation in two sentences and spend the rest on the reasoning.
  3. Give the blast radius: what could have broken, and what you measured.
  4. Name the disagreement and how you resolved it with evidence.
Follow-up
  • What would you do differently if you ran that again?
  • How did you know your change caused the improvement?

Why are you interested in applying your engineering skills to the climate and insurance sector?

medium
Behavioral and Cultural Fit

Why are you interested in applying your engineering skills to the climate and insurance sector?

Approach
  1. Pick a story where you made the decision, not one where you watched it.
  2. State the situation in two sentences and spend the rest on the reasoning.
  3. Give the blast radius: what could have broken, and what you measured.
  4. Name the disagreement and how you resolved it with evidence.
Follow-up
  • What would you do differently if you ran that again?
  • How did you know your change caused the improvement?
  • 01

    How do you handle large-scale data ingestion and ensure the integrity of the data being fed into a risk model?

  • 02

    How do you balance the need for rigorous, slow-moving insurance standards with the fast-paced nature of a tech-first company?

  • 03

    Tell us about a time you had to mentor a junior engineer—how did you approach the feedback process?

  • 04

    Why are you interested in applying your engineering skills to the climate and insurance sector?

PracHub preparation framework ↗
Is the technical project difficult?

It is designed to be a realistic, manageable project, but the bar for code quality is high. Focus on clean, maintainable code rather than just making it work.

Descartes Underwriting Software Engineer candidate reports ↗
How much focus is there on the insurance industry?

You don't need to be an insurance expert, but you should show a genuine interest in the company's mission and how technology enables parametric insurance.

Descartes Underwriting Software Engineer candidate reports ↗
What is the company culture like?

It is a multicultural, collaborative environment that values rigor and continuous learning. You will work with highly specialized teams in a professional, yet dynamic setting.

Descartes Underwriting Software Engineer candidate reports ↗
How long does the process take?

The process is thorough, typically involving several weeks to allow for the technical project and multiple interview rounds.

Descartes Underwriting Software Engineer candidate reports ↗
What topics does Descartes Underwriting test in interviews?

Descartes Underwriting interviews most often cover Python, HPC (High-Performance Computing), Time Profiling, Machine Learning (general), and Python Performance Optimization. The exact emphasis depends on the specific role you apply for.

Descartes Underwriting Software Engineer candidate reports ↗
Sources & methodology 3 sources ↗

No official company page is cited. Rounds and questions come from candidate reports and PracHub editorial material; each source shows the date it was read.