We know that the AlgoDaily's courses are great when you have at least a few weeks or months to prepare. But what if you're scheduled for an interview, say, tomorrow?
How can you prepare with just a few hours of free time?
The answer is in our cheat sheets. Did you know AlgoDaily.com has 20+ cheat sheets that provide the most common questions asked during technical interviews?
Here are our most popular ones:
Languages
Techniques
Roles and Technologies
I hope you check out some of these cheat sheets. If you find them helpful, I would appreciate it if you shared this amongst friends or on social.
This is a longer email, so brace yourself. But if you can make it to the end, you'll get the exact advice I would give my own family members as to how to land a 200-400k software engineering position.
Goals vs. Systems
Let's quickly differentiate goals vs. systems thinking. A goal is something to strive towards. Say you want to lose 10 pounds-- that's your goal. A system is an organized framework where an input leads to an expected output. The system to lose the 10 pounds might be eating 500 less calories a day for several months.
Spot the difference? While there isn't a guarantee that you'll achieve the end result you want (after all, we all work on buggy software systems...), you are increasing the probability that you'll be successful.
Applying this to your career
We all know you can't guarantee a successful job interview-- there's too many variables: your interviewer's mood, the technical questions you're asked, your fatigue on the day of, your level of preparedness, etc.
What you're looking for, however, is a way to improve your odds.
Here's an example: as a developer, a "technical" interview can theoretically consist of any kind of trivia related to Computer Science under the sun.
But practically speaking, there are 5 big types of interviews:
Yes, there will be some surprises-- perhaps you'll get an interviewer who asks you to implement floating point decimals, or one who wants you to create a programming language from scratch. But 95% of software develoepr interviewers will be some variant of those 5 interview styles.
Systematic preparation
When I first started preparing for interviews, I did the usual thing most of you will do: I'd wait for a week before the interview. I'd go on leetcode and hit "random problem" several times. I'd try to solve the problem for about half an hour, then read the solution. I'd do this for a few hours before I was burned out.
The issue with this approach was two-fold: I wasn't getting better, and I hated it. I did enough cramming of this style to just land my first few initial offers.
As I became more senior as a developer, I started to get better inbound opportunities, and at random points throughout the year. I never knew when I'd get a bite from a company I really wanted to work at, so I needed some way of staying interview-ready without anguish.
Slow and steady
This is how AlgoDaily came along-- I decided to do less, and over a longer period of time. I found the 100 most common whiteboard interview problems, and wrote a script to drip me one a day. It took me roughly 30 minutes a day in the mornings.
For each problem, to make sure I'd remember it, I started writing out an explanation that made sense to me. I added pretty visuals and step-through traces of the solutions so that if I ever came back, I'd immediately be able to "visualize" the solutions in my head.
It's important to note that I only spent about 5 hours max a week doing this. I didn't notice it at first, but this slow and steady system was making me a better interviewer, better developer, and was far more enjoyable.
The best approach is one you can adhere to
With AlgoDaily, we include a course and a newsletter because reducing things down to one lesson a day works. It's an acceptance of being human-- some days you won't feel like doing anything: no problem, reset the day you're on, and revisit the problem at a later time. Other days you'll feel motivated to really put in the work-- jump into our course and try to finish as many lessons and questions as possible.
And we've arranged things to remove any roadblocks. Our material is curated and organized in a sane, level headed way that takes you step by step through landing a software engineering job.
As mentioned in the last weekly update, we've been busy at work with the AlgoDaily email newsletter. Given the word "daily" is in our name, getting you the right bite-sized content in your inbox is always top of mind.
Two major changes for you to know about:
First, it's now free to restart the AlgoDaily DS & Algos newsletter. If you've been a subscriber in the past, and stopped receiving emails because you ran out of problems, please click here to start from the beginning. Many of our long term users haven't yet had the chance to explore the hundreds of new lessons and challenges we've added-- this is your opportunity to do so!
Secondly, Systems Design Daily, and a growing number of daily newsletters based off the content of our crash courses, are now available! The same way you've been receiving daily doses of interview problems-- get daily systems design, OOP, and ML lessons right in your mailbox.
In an increasingly competitive environment, it's not enough to just leetcode-- being a well rounded software engineer is the best way to land your dream job. To try the available newsletters, navigate to Learning Settings.
The ability to customize your newsletter is exclusive to premium members, now 50% off.
As an AlgoDaily premium member, you're always going to get the newest features and content before everyone else.
This one's been in the works for a bit! There's a lot of ground to cover with systems design, but we're trying our best to keep it with clear and visual.
I'm thrilled to announce Systems Design Daily, all of our systems design lessons neatly presented in an email newsletter! Get a bite-sized nugget of systems design and architecture wisdom every day in your inbox. We're still working on the landing page for systemsdesigndaily.com, but wanted you to start using it!
To get access, go to our redesigned General Settings page, and make your selected course Systems Design and Architecture.
Our end goal is to eventually have daily newsletters for all crash courses on the platform, with Frontend Dev Daily being the next one up. We've tripled our content output, with a target of 16 crash courses by the end of the year. Additionally, be sure you check out our newly popular Learn to Code / Software Engineering course.
As you might know, we are pivoting from a stand-alone technical interview course to a training platform-- offering courses that help engineers advance their careers and build wealth. We have a roadmap of having at least 16 career-building courses on the platform by the end of this year.
The courses have 3 underlying themes:
To preview our paid material, the following crash courses are now 100% free:
Click to start these free courses now!
We are still growing these courses as we add new ones, with one being added every month for the rest of the year. And if you like what you see, we've made our pricing more affordable. We've also made it more flexible-- cancel or pause anytime in-app, no separate call or email required.
Also: ready to take your interview prep to the next level? Conduct realistic & anonymous mock interviews with senior FAANG engineers who will give you detailed and actionable feedback on exactly what you need to work on. The best part? You don't have to pay until you're hired. Ace the coding interview with interviewing.io
We'll send you 100+ of the most common coding interview questions, once a day with visual explanations. Join over 53,000+ users who are doubling their salaries in 30 minutes a day.
Welcome to the most accessible guide to technical interviews. AlgoDaily was created to be a gentle, visual introduction to patterns around solving data structures and algorithms challenges.
We believe that technical interviews are a matter of practicing well. We've referenced hundreds of resources on habit change, education design, and algorithms to design the best and most streamlined learning experience.