The first discussion was with a recruiter about the role, Square's expectations, Square as a company, and my own aspirations.
The discussion with the recruiter was cordial and informative. When I asked for information, the recruiter promptly provided it via email or LinkedIn direct message. We then scheduled the first round of technical interviews, which were conducted virtually through CoderPad using any language I wished to use. The interview was described as a pair programming experience.
My technical interviewer called precisely on time, and we began working on the problem. My interviewer explained the problem with enough context for me to briefly re-explain it, including what I perceived as potential corner cases.
The interview was scheduled for an hour, so I focused on getting a working solution first, noting where I would optimize later if time permitted. I made sure to cover the cases the interviewer wanted addressed. I referenced the official documentation for the language I was using, mentioning it to him when I did, and he seemed unconcerned. I used Java and avoided advanced features like lambdas, prioritizing a functional solution. I did have some minor trouble recalling the syntax for declaring and initializing a specific data structure. Since this was a pair programming exercise, I consulted my "partner" rather than Google. I compiled and ran my code as I progressed.
I had a working solution by approximately 45 minutes when the interviewer requested an enhancement. I did not have time to implement it but explained what I would do. He seemed satisfied with my initial explanation. I mentioned several optimizations and how I would include unit tests, etc., if I had more time.
I am unsure if my interviewer was unsatisfied with my initial solution, my pace (development is not a race), or how I described handling the enhancement at the end—or perhaps all of these.
I was told I would hear back from the recruiter within three business days. A little over one week later, I received a rejection email from the recruiter. I politely requested feedback on the interview but received none.
From an in-memory database, implement two methods to insert and retrieve information. Use these methods to cover six or so different use cases.
The following metrics were computed from 1 interview experience for the Block Software Engineer role in Saint Louis, Missouri.
Block's interview process for their Software Engineer roles in Saint Louis, Missouri is extremely selective, failing the vast majority of engineers.
Candidates reported having mixed feelings for Block's Software Engineer interview process in Saint Louis, Missouri.