我是 Sophomore, BS CS Top 25 CS school，面的是 SWE Intern，地点在 Palo Alto, CA
HackerRank (75 minutes):
- 3 DFS grid questions that build on top of each other
HR phone screen (30 minutes):
- Behavioral questions about culture fit
Technical phone screen (1 hour):
- Behavioral questions about projects and collaboration
- 3 DFS/backtracking questions, increasing in difficulty from LC easy to LC hard
Onsite (4 rounds, 1 hour each):
Because of my NDA, I will only outline the information you can find online and keep stuff vague:
- Each round half behavioral
- Debugging round (just have experience working in larger codebases, just know how to pinpoint bugs, it was a little tricky)
- System design round
- Technical round, 2 easy and 1 hard type question
- Final interview with Hiring Manager
Offer 4 days after the interview
Gotta keep the offer details confidential, but vaguely, stuff like housing and food is covered. High end of SWE intern monthly salary for CA.
- I did 290 leetcode questions, 135 medium, 135 easy and 20 hard
- I started by failing an onsite interview for a tech startup in NY. Then I failed 3 technical phone interviews and felt like crap. A year later, I failed a Big N final round interview but I felt like I was getting close and passed a lot more phone screens. A month after the Big N interview, I got an offer shortly after the Palantir onsite. Below are the prep materials I used throughout my internship hunt:
- I highly recommend the leetcode “Explore” top question collections, medium and easy collections, this was my starting point. I recommend doing all of them, spread them out throughout a month.
- Search up Yangshun github interview prep, it has a comprehensive list of questions covering almost all types of problems. Do all the problems in the list.
- After that, I just grinded a lot of FB explore collection problems since they included a lot of good DFS and tree questions. I noticde these types of problems are getting popular recently with phone interviewers.
- Memorize BFS, DFS, Binary Tree iterative and recursive traversal, Backtracking, and maybe some classic DP problems (I think DP problems are less popular with some companies now)
- Conclusion: do a lot of problems, space them out and just learn problem solving patterns. The biggest things to pay attention to are invariants, and patterns. I still suck a lot at technicals compared to my peers, but if you know your data structures, and recognize patterns, you can solve any question!
Work hard, and know that burnout is normal. It took me a whole year to grind through these interviews and leetcode problems. In the end you will succeed