7

Why do technical interviewers expect and force you to know a made-up word such as SOLID and treat it as if it's a gospel?

Is this "SOLID" a technical standard now that should be taught in schools?

I'm not against learning and using the principles in SOLID. I just find it funny (and weird) that if I didn't watch the talk by the guy who came up with SOILD, I wouldn't be able to answer the interviewer.

Comments
  • 1
    It shows interest. You took the time to learn what all the fuss is about. You can argue against its utility if you want, that would hopefully make a better impression than reciting the Wikipedia article.
  • 4
    Welcome to the tech industry, where we make bullshit buzzwords up all the time, just for this I'm going to go grab me some Java from my local blockchain barista and pay with my ethcoin wallet.
  • 2
    > I just find it funny (and weird) that if I didn't watch the talk by the guy who came up with SOILD, I wouldn't be able to answer the interviewer.

    "I just find it funny (and weird) that if I didn't watch a video or read a book about quantum physics I wouldn't be able to answer a question about quantum physics"
  • 1
    Also fun fact. All words (and thus all abbreviations as well) are made up
  • 0
    @inaba Quantum Physics is a discipline not some random guy on the internet...
  • 1
    @rantsauce i don't know. Pretty sure some random guy made that up too.
  • 5
    SOLID isn't a buzzword. If you're doing OO you should know what it is. It's not infallible, but if we disagree with any of it we should be able to explain why.
  • 0
    @C0D4 not really, it was a lot of guys.
  • 1
    I fucking hate mnemonic acronyms, they're dumb and disguise the principle behind them.

    "Write readable shit, here's how!" is a far more useful term.
  • 0
    If you have this question.. You should really look it up rather than fucking around

    your question sounds smth like:

    "why should I place wheels at the bottom of the car when designing it? Why can't I place them on the roof? Just flip the car and ride! Why do I have to stand by some idea some prick came with? Is this some new standard that should be taught in schools now?"
  • 1
    @netikras

    Well a better translation would be:

    “Why do I have put the wheels at the bottom of the car using a common socket to screw them on when I could place the wheels inside the car and weld them in place?”
  • 0
  • 2
    I know people who always talk about SOLID in front of everyone but actually mis-interpreted and incorrectly understood it.

    For example "single responsibility" means shorter code. NO IT IS NOT.

    There are also people who write really good code, they follow those principles but don't know its name.

    So if you are the interviewer, instead of asking what SOLID is, you can try asking:
    - How would you design the code in this situation?
    - How would you refactor/fix this bad code?

    etc..
  • 0
    @rantsauce So? Without looking it up you wouldn't have a clue as to how to do it.
  • 0
    @nam17887

    "There are also people who write really good code, they follow those principles but don't know its name."

    This. However, a good interviewer will construct their questions to get around this.

    So, when I interview people I will ask (if appropriate) to tell me what "SOLID" is, but that isn't really important what I'm actually looking for isn't a dictionary definition, but what it actually means come implementation.

    I don't care if I have to list the definition if they haven't heard of SOLID or forgot what the S stands for as its irrelevant its actually understanding what that means and why you should or shouldn't comply to each practice.

    There will be a ton of devs out there who can instantly list off

    S - Single-responsibility Principle
    O - Open-closed Principle
    L - Liskov substitution principle
    I - Interface segregation principle
    D - Dependency Inversion principle

    But when asked to implement or provide associated pros/cons they'll have no answer.
  • 0
    People can list buzzwords its easy, but its having a true understanding of the subject and being able to actually practice that in the real world that sets the good from the bad apart.
  • 0
    I'm not sure I understand the point you're making.

    SOLID principles are generally accepted as the most effective way to develop OO software in a way that is easier and faster to maintain and reduce technical debt.

    It's not a made up buzzword. If you understand SOLID you are are more likely a stronger candidate so it's a fair interview question.
Add Comment