Taro Logo

Senior Software Engineer Interview Experience

January 17, 2023
Positive ExperienceGot Offer

Process

After a screening call with a recruiter, you do a 1-hour coding exercise with a Stripe employee.

They can be anyone from the company, and they are interviewing for general Stripe principles.

Core principles emphasized during the coding exercise are communication and correctness.

Questions

Part 1

In an HTTP request, the Accept-Language header describes the list of languages that the requester would like content to be returned in. The header takes the form of a comma-separated list of language tags. For example:

Accept-Language: en-US, fr-CA, fr-FR

This means that the reader would accept:

  • English as spoken in the United States (most preferred)
  • French as spoken in Canada
  • French as spoken in France (least preferred)

We're writing a server that needs to return content in an acceptable language for the requester, and we want to make use of this header. Our server doesn't support every possible language that might be requested (yet!), but there is a set of languages that we do support.

Write a function that receives two arguments: an Accept-Language header value as a string and a set of supported languages. The function should return the list of language tags that will work for the request. The language tags should be returned in descending order of preference (the same order as they appeared in the header).

In addition to writing this function, use tests to demonstrate that it's correct, either via an existing testing system or one you create.

Examples:

parse_accept_language("en-US, fr-CA, fr-FR", ["fr-FR", "en-US"])

(the client's Accept-Language header, a string) (the server's supported languages, a set of strings)

returns: ["en-US", "fr-FR"]

parse_accept_language("fr-CA, fr-FR", ["en-US", "fr-FR"])

returns: ["fr-FR"]

parse_accept_language("en-US", ["en-US", "fr-CA"])

returns: ["en-US"]

Was this helpful?

Interview Statistics

The following metrics were computed from 24 interview experiences for the Stripe Senior Software Engineer role in United States.

Success Rate

0%
Pass Rate

Stripe's interview process for their Senior Software Engineer roles in the United States is extremely selective, failing the vast majority of engineers.

Experience Rating

Positive38%
Neutral25%
Negative38%

Candidates reported having mixed feelings for Stripe's Senior Software Engineer interview process in United States.

Stripe Work Experiences