goupaz / goupaz.com

Community driven open source accelerator
MIT License
220 stars 32 forks source link

Land as Software Engineer? #20

Open sakomws opened 5 years ago

sakomws commented 5 years ago
1. Find opportunity
2. Perfect Resume
3. Reach to recruiter
4. Master technical interviews
5. Master behavioral interviews

For details: Pathrise guide

sakomws commented 4 years ago

https://github.com/bmorelli25/Become-A-Full-Stack-Web-Developer

sakomws commented 4 years ago

https://github.com/Software-Engineering-Reading/proqramci-muhendislerin-el-kitabcasi

sakomws commented 3 years ago

https://blog.pragmaticengineer.com/preparing-for-the-systems-design-and-coding-interviews/

sakomws commented 3 years ago

https://www.youtube.com/playlist?list=PLrw6a1wE39_tb2fErI4-WkMbsvGQk9_UB

sakomws commented 3 years ago

https://www.linkedin.com/posts/kevindnaughtonjr_kdn251interviews-activity-6811704895046066176-TKe0

https://github.com/kdn251/interviews https://github.com/jwasham/coding-interview-university https://github.com/donnemartin/system-design-primer

sakomws commented 2 years ago
  1. Leetcode Always ask clarifying questions, they are meant to be vague.

Tech Interview Handbook (solve 50 suggested LCs multiple times): https://lnkd.in/dbK9TasP

Grokking Coding Interview: https://lnkd.in/d4YzR_3d

Solve each question yourself before looking at answers. After struggling with certain topics, found some youtube resources that were really helpful.

I would say 1/2 of my coding questions was graph related, and I used topsort, MST, union find during my interviews so its worth knowing them well.

Great resource on Binary Search (esp. for harder variants): https://lnkd.in/dPVikn9e

Quite a few LC hards involve binary search as part of its solution, but its non-obvious.

At staff level, you are expected to have great communication, come up with one or more high level solutions in reasonable time with space and time complexity, implement mostly correct, and check for errors independently.

  1. SYSTEM DESIGN

Always ask clarifying questions, they are meant to be vague.

No. 1 tip: Pay for mock interviews, take extensive notes, study, pay for more interviews. I used igotanoffer.com. Try booking different interviewers, they have different expectations, communication, friendliness.

Grokking system design: https://lnkd.in/dKBtGDDG

It’s good to complete grokking, but in practice its a little too shallow for staff level.

Watch all videos and take notes from this channel: https://lnkd.in/d32sycXJ

Most other channels like Exponent are actually not great examples of a good interviewee for staff level.

Read papers on Dynamo, BigTable, MapReduce, Cassandra, Raft, Lamport Clocks, etc.

A lot of material written by this Medium writer is great: https://lnkd.in/d_4yxAA7

Memorize Jeff Dean’s latency numbers: https://lnkd.in/dq42yWsa

If you have time, read DDIA: https://dataintensive.net/

I memorized mnemonics for structure of how I execute my interview, as well as for each topic. Like OSI model, caching strategies, load balancing strategies, database types, etc. You need to make up your own in order to ingrain them.