I recently completed the interviewing process with Sephora. At least I think it’s completed, the inhouse "technical talent partner" never followed up with me weeks after my technical conversation.
In terms of the team, Sephora has five iOS engineers at the moment (soon to expand to 6). While the focus is on the phone app, there is also an iPad app “which we don’t talk about” (it hasn’t been updated in over a year and may be actually managed by a different agency or team, either way Sephora doesn’t seem to care about the iPad app except that it does earn them some income which is why they keep it around on the app store).
The initial technical phone conversation took a combative tone from the first moments, where I was confronted with some stark technical and leadership questions (and by "stark", I mean they were strongly worded where it definitely felt like he was looking for a specific set of answers and he was certainly not going to provide any hints or inspiration as to what he was looking for). It didn’t help that during the entire conversation, the entire time I was speaking with this manager, he was doing transactions at a Walgreens drug store, then walking to the office down San Francisco's busy (and noisy) Market Street.
I’ve included the technical question at the bottom of this review.
For the leadership question, this scenario was presented: Sephora’s mobile app gets their code from offshore teams around the world (India, Belarus, Costa Rica, etc.). Assuming the “burn rate” (i.e. an Agile term for describing how tasks, tickets and stories are closing according to estimates) is barely on time, if a pull request is opened (where the incoming code builds and the QA people say everything is working), but the actual code is terrible (i.e. bad looking or conforming to standards, not "DRY", etc.), what would I do (as a lead mobile engineer). Different companies would have different answers (e.g. some companies would move the goal posts to get features & underlying code done just right; other companies would remove features from a release to put it into a later release). For Sephora, they have specific release dates (usually corresponding to marketing schedules and/or holidays or seasons), so the answer I gave him was “bring the bad code in, mark it as ‘technical debt’ in a ticket to be fixed asap, give constructive criticism to the offending offshore developer, and hope that s/he learns and grows from that mistake and doesn’t do it again”. I suspect this answer wasn’t the one the my interviewer was looking for and why I didn’t get to continue the interviewing process.
Hopefully my experience flunking the Sephora interview process will help you to prepare to pass your interviewing day. If you find any of the information in this review helpful, please let me know by voting "Yes" on the "Helpful?" question below (this helps to motivate me to be as detailed as possible).