papayon in  
Computer Science a year ago

is 3-4 months enough to learn data structures and algorithms enough to be able to land a big tech interview?

I plan to study 3-4 months 4 hours a day

GrahamBackend Software Engineer a year ago
Go for it, if someone says no, you will stop and not even try?

Aside from the cliché, it’s generally is sufficient. Not too short to cram, not too long to dragged out.

If you fail, you will already have a solid fundamental to start again next time
iamrandomsweSoftware Engineer a year ago
I will join Graham here, it should be an iterative approach. You take the next 3-4 months, to learn as much as you can. Act as if it was your last 3-4 months ever, make it or break it. See where you are at the end. If you are not at the level you want, repeat for another 3-4 months. I will say add two things: a) learn what works(patterns) to stay focused and get some Real-World practices/reps in! LeetCode is cool and all but that's just the gym, doesn't mean you get to skip LeetCode either. But don't just learn for the sake of learning, you need to land some real interviews. I would say, 1 per week during those 4 months is a good start. You want to interview often enough that your blood runs cold when it comes to the process. Your next interview becomes just another task for the day. That means you need to get interviews with A LOT of froggies(companies you don't want) where the outcome of the interview is meaningless because you don't intend to accept any offer. There are a lot of tech startups and tech behemoths that will fall under froggies for me. Make a list, 10-20, and use them as target practice. But I wholeheartedly believe that 4 months is the sweet spot for algods and preparing for tech interviews. Especially if you have 1-2 years of real dev work under your belt and you have unearthed some technical skeletons in the codebase.



Software Engineer