System design questions approach non internet tech background

New b00
Nov 6, 2018 3 Comments

I've been a developer for many years but not in internet tech. I've never professionally worked with internet tech like websites or users. Luckily I read a lot about internet technologies. So how do I approach the system design question? I haven't had a system design interview yet so I may be off.

But I'm studying up on it and my naive approach is to memorize how the top internet sites scaled up and use parts of their solutions to solve whatever unique problem I'm asked.
The big problem with that is that its not authentic. It's not what I do. Is that OKAY? I feel like it's a trap and the interviewer will just sit there and wait for me to say something stupid.

It's like if you tech guys come to finance and I asked you how to build a stock exchange. You can memorize how some of them did it, but u'd miss some details. Or worse you'd make something up and look totally stupid.
Is there a way to become totally relaxed with this interview round and sound authentic when it's not in your background?

The data structures and algorithms is also something I don't use often, but I feel comfortable with it because there is a deterministic answer. I feel like the system design is more open ended and more of a check on your actual experience. Which doesn't make sense when you come from a different industry. Am I totally off?

comments

Want to comment? LOG IN or SIGN UP
TOP 3 Comments
  • Morgan Stanley ninja007
    I’ve been through these system design interviews and yes, they’re open ended.

    I have a very similar background - all the experience is in banking/trading tech. Even the web apps we build at work cater to hundreds or thousands at best, not millions. So yes, there’s a clear disconnect.

    There’s nothing wrong in admitting you don’t have real world experience building these AFTER you’re comfortably past the major discussions. Most large companies scale the way they do - because they HAVE to. If in your use case, a monolith is completely fine - only moronic purists will advocate to complicate it unnecessarily. The key is to show that you evaluated and made a conscious decision to not have to do massive scaling.

    A personal project on any public cloud setup will help you get far. You can build out something that scales using LBs, failover strategies, read vs write APIs, read replicas, async writes, distributed pub-sub, show actual usage of sharding, ETL/streaming for analytics, caching options - how to keep them in sync, eventual vs strong consistency etc - the usual stuff you’ve already read about.

    There’s no shortcut for actually getting your hands dirty and doing it. The devil is always in the details.

    Try focusing on showcasing what you know well.

    I’ve always been in financial tech - but was able to get F/G/Amazon offers for EM/SDM roles after around 6 months of prep.

    I ended up staying here - but got a chunky raise in place. On par with the FANG offers (and with no vesting - all cash)

    It’s not as hard as you think.
    Nov 7, 2018 0
  • Microsoft AisWI2$;kp
    Here’s a secret: no one knows what they’re doing. Everyone is faking it.
    Nov 6, 2018 0
  • New coolgu
    You just have to practice. Try building a simple web app to get the feel of it. Theres a lot of great tutorials out there.
    Nov 6, 2018 0