I will be leaving Salesforce to join a FinTech startup called Blend. In this post, I will be detailing the process I went through to pick Blend, and also touch on the interview process for tech companies in general.

Why leave Salesforce

Salesforce is a great company. It constantly ranks as one of the best companies to work for in the bay area. Aside from boasting a great culture, it is also very proactive when dealing with ethical and political issues. The CEO has a refreshing attitude towards customer trust, something that can not be taken for granted in this age of increasing scrutiny for privacy compliance. So the decision to leave Salesforce was not an easy one.

As good as Salesforce is, it is also really big. With all the pros of a big company, a bunch of negatives also creep in. Double standards, politics, and lack of transparency are the usual suspects. It gets harder to make an impact and most of your time is spent in meetings and trying to please the executives. Not for a moment do I think that Salesforce is the only company suffering from this, nor do I think that joining a smaller startup will magically eliminate these vices. But I do think that there is not going to much time to spend time on anything that does not affect the bottom line in a company fighting for survival. I have also been working in big companies for a few years now, and it felt like the right time to try something different. Even the worst case scenario will produce a rich vein of experience and learnings, and that did not sound like a bad deal to me.

Why join Blend

I decided to narrow my search to startups for the reasons mentioned above. The startup scene is the bay area is diverse and complex, and so I had to apply more filters to boil it down to a manageable list. I looked for startups that

  • have found product-market fit
  • have a great founding team
  • have backing from noted VCs
  • are on the Breakout list and the Wealthfront list
  • have a decent work-life balance (as good as you can have at a startup)
  • can pay market/slightly above market cash compensation
  • give me enough teeth in the game (stock options)
  • have a chance of growing exponentially in the next few years
  • have a team that I actually like and trust
  • are on the right side of the ethical and social line

Some of these are judgment calls that you have to make based on the interview and market research but some are fairly deterministic. The Wealthfront list and Breakout list act as good filters. As an example, companies like Uber and Lyft are great, but may not grow exponentially in the next few years because of their current valuation and size. This is my list of filters. It is definitely not the only way to do it, nor is it the best way to do it. But I think it is important to come up with a list like this to make your job search manageable. Blend is one of the few companies I spoke to that ticked all the boxes. Joining a new company is always a risky proposition, but some due diligence can potentially reduce the risk.

Interview preparation

When people move companies, they often do it through referrals. Although this has its advantages, it also means that you may not get to talk to a lot of great companies that might be a better fit. I wanted to cast a wide net, and talk to a lot of different companies to understand the landscape, see what’s out there, get better with interviews and help with my offer negotiation. This also meant that I had to prepare well for all kinds of interview questions. Some liked a pair programming style of interviews while some went heavy on DS and Algorithms. Some companies had multiple culture and behavioral rounds, while some had a bias towards system design. More often than not, the work that you do does not directly correlate to interview success. I have never written a single line of code that used a red-black tree or a binary heap. But companies need a rubric and a somewhat standard way to interview people, and whether you like it or not, this is the reality today. I decided to accept this and spend the time it takes to prepare for such interviews. The key to doing well in technical interviews is lots and lots of deliberate practice. Instead of blindly doing questions on Leetcode or similar sites, I came up with a plan that helped me recognize patterns, and make my code more fluent. As with the list of filters for choosing startups, it is important to come up with a thorough plan. It’s not necessary to follow someone else’s plan or methods as there is no right way. I decided to split my practice into the following

Data Structures & Algorithms:

This involves some basic revision of the theory plus lots of practice. I practiced enough to be comfortable tackling new problems

  • LinkedLists
  • Arrays/Strings, Stacks, Queues
  • Trees
  • Graphs
  • Recursion and Dynamic Programming
  • Sorting
  • Others (Heaps, Tries, Binary Search, Concurrency)
System Design

This is not something you can pick up in a month or two. This involves working on interesting problems at work as well as reading and keeping up with industry trends. Even then, some practice can help with back-of-the-envelope calculations and distributed system basics

Behavioral

With my managerial background, it was more important for me to spend some time thinking about some common questions. The key here is taking the time in advance to think about what you want to say. During an interview, there are lots of thoughts circling in your head, and so, a little bit of preparation can go a long way with diction and fluency.

Summary

  • In the bay area, there is really no reason to be in a job that you do not love. There is a great company out there for everyone, whatever the definition of great maybe. It does take a little bit of time and effort but the rewards may be well worth it.
  • There is a lot of negative vibe about tech interviews. But I found that a lot of companies seem to be trying hard to make the interview process fairer and more transparent for candidates. This is a step in the right direction. Good interview preparation is what the companies want to see as well. It shows that you are willing to work hard to overcome/solve an issue, and that’s a very desirable trait to have in a candidate.
  • It’s ok to be wrong about this. In a year, I may find out that Salesforce was not such a bad place after all, or that Blend is not the best fit for me. If you count your life in terms of experiences, this is can only turn out positive.