My first coding round was a disaster. I was asked to design and implement an initial version of a templating system with substitution. I suggested using Angular's template literals, but I wasn't sure what the interviewer was looking for. I wasn't clear on what he wanted me to achieve in this coding round. I will never go for a company like Plaid.
Context
It's often useful to write HTML templates into which we can programmatically substitute variables. For example, a template might look like this:
html
or like this:
html
among other possibilities. Either way, filling the template with a statement like:
javascript const s = readTemplate() template = compile(s) template.fill({ username: "foo" })
would yield a result like:
html
Most templating engines also support conditional statements. For example:
javascript template.fill({ showWelcomeMessage: true })
would be one way to specify if the welcome message should be shown. (Yes, in this case.)
Challenge
The following metrics were computed from 50 interview experiences for the Plaid Software Engineer role in United States.
Plaid's interview process for their Software Engineer roles in the United States is extremely selective, failing the vast majority of engineers.
Candidates reported having negative feelings for Plaid's Software Engineer interview process in United States.