What I learned (and re-learned) from working at Yelp for 3 years
My story of how I joined Yelp and what all I learned while working here.
In November of 2014, I received an email from Yelp recruiter who want to have an intro call. I was surprised by the fact that recruiters really do check profiles from an online job portal! I was in India, which is in a complete opposite time zone, so I started googling the difference between PST/IST to suggest times.
Silicon Valley is a dream for many techies, I had no idea that I was just a few months away from moving there!
After I cleared the phone screen interview with the recruiter, they sent me an assignment followed by a Skype video interview with an engineer. I did reasonably well on those rounds too. Next was the invitation to visit Yelp HQ for onsite interviews! I was really excited and nervous at the same time! Fast forward, I received an offer letter to join Yelp! The next big hurdle was H1B Visa, eventually that worked out as well, and I started working at Yelp on November of 2015. And then the journey began…
Favorite moment in 3 years was when I bumped into Yelp CEO Jeremy Stoppelman in the elevator on my very first day — we introduced and chatted for a few seconds.
Last Friday, I hit my 3-year milestone at Yelp. During my tenure of working at Yelp, I came across many situations which changed my mindset and how I think and perceive problems — there was always some learnings.
1. Setting goals to stay focused
After I started working at Yelp, I realized there is still a lot to catch. Setting quarterly goals or objectives really helped me to stay on track. For example, “Learn Python” was an Objective & “Write a batch to perform CRUD operation on DB” was a KR (Key Result).
Yelp has a concept called Quarterly Conversation where an employee & manager will work together on developing a career path for engineer. This happens every quarter. None of the companies I worked before had this. This format really helped me share and brainstorm new objectives with my manager.
2. Welcome change
They say, “change is the only constant”. Don’t be afraid of a change. You may be losing something good, but you’ll gain something even better!
I started working as back-end engineer in 2012 after graduation. However, I was comfortable in doing front-end as well, and hence the confusion started on whether I should become a front-end or a back-end engineer. Eventually, after some hesitation, I decided to give it a try. I realized I was actually much better as a front-end engineer and then I switched my career.
At Yelp, I switched my team multiple times (for positive reasons!), managers, roles, almost everything! I worked in the core web (Webcore) team as well as multiple feature teams. I learned that, anything in your job might change, now or maybe later. Welcome all the changes around you and always be prepared for what comes next. Don’t get too comfortable or get settled on something.
3. Actual learning is by doing it
When I started writing this post, I had no idea what I would write or how to even start; I started looking back to my last 3 years and decided to just write down whatever comes into mind. Slowly, it started taking a shape and now you’re reading it! I experienced it several times in my career, nothing could beat to practical learning.
I couldn’t write Python when I joined Yelp and most Yelp services are written in Python. I started reading code written by other engineers and started taking up tickets thereafter. Setting up personal quarterly goal (as learning Python) really helped me to stay focused along the way.
4. Making friends at work is important
If you happen to work with someone, and if you know them, it makes life so much easier. Since it’s not likely that you will already know all your co-workers, it’s important to start getting acquainted. One way could be start meeting with people from other teams or groups you’re working with closely. You have no idea when you get to work with them.
Yelp runs Yelp Beans, a program where you meet random colleagues for a coffee chat every week on Friday. Through this, once I met an engineer from the Yelp Payments team. Next quarter, during a team switch, I joined Yelp’s Payments team and I found that person was still there and now my new teammate.
5. Stay tenacious when the going gets tough
Tenacity is important for an engineer. Never be afraid when you get a tough or weird problem to solve. If you have no idea on how to solve, you can start by asking someone around you, or try breaking the problem into smaller subproblems. But the key is to stay positive and stick to it.
Once, I was assigned to a project where I had to write a Python script which will trigger a Docker container and export an Android AAR package. Coming from the front-end engineering world, I had no clue on how to approach this problem. I started with basic reading on how to create AAR file for Android, then learned about how to create the Docker container and eventually connected all dots to solve this.
6. Don’t avoid reading
Don’t stop after you achieve something! Once you know something or get expertise of, try to go to the next level. Keep learning new things, everyday something interesting comes up — select some topics, choose some books you might like.
I made a mistake of not reading a single book during my first year, since my schedule and life completely changed after I moved to the USA. I wish I could get that time back! Always blamed my schedule — spent my entire time sitting in-front of computer coding. When I started as an Engineering Manager, I was introduced to some books to read, and that put me back on track. Now, I’m reading (or trying to read) a book a month. All I needed was a trigger.
7. It’s okay to ask questions
If you don’t know something or can’t figure out after some trials, just ask a question to someone — don’t worry about what people would think about you. Everyone has some questions in their mind, maybe of different type or level than yours.
The technical problem you’re facing currently might not be unique to you, your teammates or someone in another might have faced. No one gets annoyed or feels bad if you’ll ask a question. Try to remember when someone asked you a question. When you answered it, wasn’t it rewarding!
8. Don’t just thank, appreciate
Never feel shy to show gratitude to someone who has helped you. Numerous situations arise every single day that warrant our genuine appreciation and gratitude. But, most times, we allow a quick and standard “thanks” that’s mumbled in passing to fit the bill. Of course, a “thank you” is always appreciated , but, we’ve all become so used to hearing those two little words, they’ve all but lost their meaning in many cases.
Yelp has a strong culture of sending “Love” as appreciation via a web-app called Yelp Love, when someone really helps you or makes your day. Most loved one (who received the most number of love) and the lover of the week (who sends most number of loves) gets to keep teddy and care bear. You could even see how many loves you’ve received so far and from whom.
9. Humans are same
I was a little anxious during my initial period of working at Yelp (maybe imposter syndrome) and I was doubting my own abilities when it came to technical challenges. Always thought that people around me are smarter and I was here by a coincident and not because what I know.
After talking and working closely with so many engineers from different teams, and shipping many features, I realized that all human beings are same, it’s not just me, but everyone can make mistakes or become sad or get emotional.
Thank you for reading it thus far. Feel free to share your learning from your job in the comments, I’d really love to read them!