There are 4 dimensions of software engineering to master

Chase / Eng piv
Jul 2 15 Comments

1) The elementary particles: pass by ref, pass by val, garbage collection, stack space vs heap space, thread management, locks, reentrant locks, deadlocks. This is where we question how is it possible that the world of software engineering can exist and where it came from. Was there a big bang ?

2) The algorithms: BFS, DFS, Union Find, Recursion Trees, Graphs, Sliding windows, etc. These most easily demonstrate STEM-intelligence and the reason they are favored by FANGs. These are pure brain exercises.

3) The brick laying: writing your code so it's not a house of cards by making use of OOP design patterns such as factory, abstract factory, adapter, facade, observer, reactor, and incorporating SOLID principles into every line of your code. So it is defensive, extendible, readable, and robust. There's little intelligence needed here but instead lots of practice and mimicking how others do it.

4) The architecture. In an internet world, it means designing code so it can run and store data across millions of commodity machines and resistant to failure of any of those machines and scale it up. This is the hardest part and requires decades of experience. If you cannot master this you'll never make E5 at FB.

Mastering those 4 dimensions, and you shall be victorious in every interview. A weakness in any one dimension and you will perish before leaving the gate.

comments

Want to comment? LOG IN or SIGN UP
TOP 15 Comments
  • IBM xlajduf
    “And u shall be victorious”... balls. We all know its leetcode. Now TC or gtfo
    Jul 2 1
    • Netflix mr.clippy
      Blind need a stack overflow official answer feature to their threads.
      Jul 2
  • Netflix beebox
    You totally forget to mention office politics
    Jul 2 1
    • New / Strategy
      Porsche996

      New Strategy

      BIO
      MIT BS MechE, Stanford GSB
      Porsche996more
      No he forgot. 0) Leadership Principles
      Jul 2
  • Google KennyLogin
    You missed "communicating with others". The best code in the world isn't worth shit if other people can't use it or understand it or if it doesn't match what your users want.

    (Also, the easiest way to be a 10x engineer is to make 100 engineers 10% better.)
    Jul 2 1
  • Facebook / Eng
    elena25

    Facebook Eng

    PRE
    Facebook
    elena25more
    This is so much bullshit. Design patterns? Really?
    Jul 2 3
    • Booking.com / Other
      Punani

      Booking.com Other

      BIO
      🤬🤪🥴🥺🤫😜🤦‍♂️
      Punanimore
      Some companies want to know if the candidate understand how patterns work. In an onsite I was asked to explain factory, Singleton, and I also needed to write a generic java class to demonstrate that I can can build one.
      Jul 3
    • Facebook / Eng
      elena25

      Facebook Eng

      PRE
      Facebook
      elena25more
      Lol. Don't work there

      Ask the interviewer if they've worked with any language other than java. My guess is not
      Jul 3
    • Amazon / Eng
      fahrenheit

      Amazon Eng

      PRE
      Zalando
      fahrenheitmore
      lol @ singleton still being taught in fucking 2019 and it's just a glorified global variable smh
      Jul 3
  • HERE progli
    hope you used the web inteface to type all that
    Jul 2 0
  • Facebook esketitt
    Hmmm there’s much more to it
    Jul 2 0
  • New / Eng rresoisnco
    ily
    Jul 2 0
  • Bloomberg / Eng F.U. money
    Lol pathetic
    Sep 5 0
  • Booking.com / Other
    Punani

    Booking.com Other

    BIO
    🤬🤪🥴🥺🤫😜🤦‍♂️
    Punanimore
    I have never seen a union find question in interviews. Has anyone got that in their interview?
    Jul 3 0

Salary
Comparison

    Real time salary information from verified employees