On Project Ideas
You're applying for software engineering jobs without software engineering experience. Your resume needs proof that you can actually build things.
The bar i want you to aim for: at least two projects that make a hiring manager pause and go "huh, that's interesting."
So what counts as interesting? By the end of this you'll be able to look at any project idea and tell whether it holds up - and there's a checker at the bottom to test yourself on.
What makes a project interesting
There are really only two properties that matter. A project that has either one is doing real work. A project that has neither is decoration.
Transforming inputs
A satellite tracker takes orbital elements and tells you where the satellite is in your sky right now.
A chord identifier listens to you play guitar and outputs the chord name.
The input goes in looking like one thing, the output comes out looking like something else - and the gap between them is where your code lives.
in goes one thing, out comes another.
A weather app that calls an API and prints what comes back doesn't count. The transformation is happening - it's just happening on someone else's server.
Making decisions
A fantasy-sports advisor that picks who to start this week based on matchups, weather, and injuries.
A spaced-repetition app that decides what to quiz you on next based on what you got wrong yesterday.
The app has to weigh things. It has to choose. And it has to be able to defend the choice - which means you had to think about how to make the choice.
many factors in, one defended call out.
An app that hands every decision to AI doesn't count - same problem as the weather app. The deciding is happening somewhere else.
The CRUD trap
CRUD - Create, Read, Update, Delete. If you've done the databases lesson, you'll recognize those as the four things you ever do with data. A CRUD app is an app that does those four things and nothing else.
Here's a quick diagnostic: if updating or deleting feels like the natural next feature, you've probably built a CRUD app.
A CRUD app is a vending machine where you put a coin in and the same coin pops out. You write a post, the post shows up. You write a task, the task shows up. You edit the task, the edited task shows up. The app didn't do anything - it just held your stuff for a while.
what goes in comes back out, unchanged.
CRUD wears a lot of costumes:
different subject, same hollow machine.
Some of those don't sound like CRUD. That's the point - the subject matter is a disguise. Underneath, it's data in, data out, no logic in between.
to be clear: almost every real app has some CRUD in it - users, settings, saved stuff. it's just not the part that makes anyone pause.
Where the good ideas live
The shortcut is your own life.
You go to planetariums and own a telescope - build the satellite tracker.
You play guitar - build the chord identifier, or a karaoke machine that scores you on pitch.
You're sick of grocery prices creeping up - build something that watches the items you actually buy and pings you when they go on sale.
You're a researcher and you're tired of bouncing between a pdf viewer and a chat window - build a paper viewer with the chat inside it, where the AI already knows what you're looking at.
The pattern: problems that are directly relevant to your life that you'd use the thing to solve.
Real problems are messy, and messy problems force interesting decisions and non-trivial transformations. The technical challenge tends to come for free.
Try one
Have an idea? See if it holds up.
Type your project idea below. The checker will look for the two properties - transforming inputs and making decisions - and tell you whether it sees them.