DEV Community

John Jacob
John Jacob

Posted on

3 Levels of Developer

Software development is easy. It's 2020. We can build an app. We can store and mutate data. It's all solved. Within reason if you can explain what you want a computer to do, I can make it do the thing.

Now: "The thing". That's the hard problem. What in the world are you building? What does it do? Why does it do it? Will anyone care that your thing does the thing it does?

I've been realizing a few phases between developers I've worked with in my career. It's three main levels of professional developers:

Level One — You can ship a feature

Within existing primitives, they can ship a new set of functionality on top.

For Example: "Add a way for users to like messages".

You need these people on your team. These kind of developers are incredible for continuous improvements and bug fixes.

Level Two — You can ship a product

You can build a product that's well scoped and well defined.

For Example: "Build a messaging app"

Good level two developers can take a well defined scope of work and ship maintainable code on time. They can define technical primitives from a non-technical design. They know how to break up work into executable deliverables and iterate until "the thing" is shipped. They can maintain and bugfix at the product level autonomously.

Level Three — You can deliver a solution

You can build a solution to a problem.

For example: "I need more customers"

Level Three developers are like Unicorns. They are designers, product managers, business analysts and full-stack coders all wrapped into one. Level three coders take abstract problems and ship concrete solutions to them. Level three coders don't ask "Should I use React or Vue?" They ask: "Should we build this at all?". A level three coder approaches the world with a ruthless bias toward shipping. Shipping small, iterating, getting their hands dirty, and pushing until their technology feels like magic to people that use it.

Top comments (3)

Collapse
 
jennasys profile image
JennaSys

The concept you presented makes sense, but I would call these categories rather than levels. Some of the most amazing programmers I've ever met that could code circles around me, would never get beyond a level 1. Some people that are great at finding big picture solutions and writing the code, might not have the project management discipline to actually finish anything. A unicorn is someone that excels at all 3 of these.

Collapse
 
tadman profile image
Scott Tadman

These are three areas of focus. You can start with any one of these and branch out into the others over time. There's no specific sequence that's required and they're all equally, critically important.

Collapse
 
johnsalzarulo profile image
John Jacob

That's a great point, that it's not a Hierarchy, just different focus. Totally valid that every area here is equally essential.