Interview prep for software engineers

Crack the loop, not just the problem.

Java, SQL and OOP interview questions with clear answers, plus pattern-based DSA. Full solutions, clear reasoning, written for people who want the offer.

two_pointers.py
# Pattern: two pointers on a sorted array
def pair_sum(nums, target):
    lo, hi = 0, len(nums) - 1
    while lo < hi:
        s = nums[lo] + nums[hi]
        if s == target:
            return lo, hi
        if s < target: lo += 1
        else: hi -= 1
    return None   # O(n) time, O(1) space

Four tracks, one place

Pick the track that matches your interview.

Coding & DSA

Data structures and algorithms

Learn the patterns, then practice them.

Explore DSA →
Core CS

Theory and software design

Short answers on Java, SQL and OOP, plus design patterns.

Explore Core CS →
AI & ML

AI, ML and LLMs

From search and regression to GenAI.

Explore AI & ML →
System design

System design

Walkthroughs from requirements to scaling.

Coming soon

Latest from the blog

New questions, guides and worked solutions, straight from the handbook.

Practice

Put it into practice

Problems with tested solutions, filtered by track and difficulty.

Search problems
Coding & DSACore CSAI & MLEasyMediumHard
Two SumEasy
3SumMedium
Median of Two Sorted ArraysHard

Prep that respects your time

01

Patterns over problems

One idea unlocks dozens of questions. We teach the idea first, then the problems.

02

Full solutions on the page

Code, reasoning and trade-offs in the article itself. No hunting through repos.

03

Practice built in

Every pattern ends with worked problems, tested solutions and an original practice question.

Built for people preparing for software interviews

College students

Placement-season prep with plain-language explanations and a clear order to follow.

Self-taught developers

Fill the gaps a degree would have covered, in a sensible order.

Working engineers

Refresh the patterns behind coding rounds without wading through hundreds of problems.