In the few years I've been working in tech, I've started to see common patterns that engineers adopt to solve most problems. For example, here's a popular problem with different approaches:
Problem: The way we clean our client's archives is complex and messy.
Craftsman's scope - How to make the piece better?
"Maybe we can simplify the clean up script. Can we possibly use another language with built-in features we can leverage, maybe one with less dependencies?"
It's the stereotypical engineering work we find in TV and movies. This is the scope that can spend days or years focused on extracting +5% of efficiency out of a component. It's where algorithms are born and faster compute time is achieved.
Architect's scope - How to make the system better?
"Since the data is spread out evenly, maybe we can create a centralized service that cleans each archive at a certain frequency?"
The Architect scope is focused on arranging the pieces to produce an elegant system. Tools for this problem are still rooted in technology, but seen through a lens that encompasses more abstract concepts like patterns, relationships, coordination, and communication.
Entrepreneurial's scope - How to serve the client better?
"Maybe we should confirm that our users even need this data. How often do they access it? Can they live with only the last X number of backups?"
In this scope, technology is simply a giant lever to fill a real need. Communication and vision are the most useful tools here since uncovering needs and addressing them efficiently is much more about understanding than technology's use.
Finding a great solution requires the right mix
I believe much of what plagues software engineering is that we simply copy roles from other disciplines, but we don't organize our thinking around what those roles actually mean. Or ignore the fact that some scopes tend to misalign with people's preference.
Titles like "architect", "senior engineer", and "manager" should technically embody one scope over the other, but I rarely see that level of separation in thinking. Especially when those positions are filled by engineers who have spent years looking at problems deeply through a Craftsman scope.
"If you've ever had a manager spend hours preaching the benefits of a mapping library, while you have yet to have a talk about your career progression, you can see the scope misuse at work"
My hypothesis: When the three scopes are used effectively, teams are much more productive in achieving the best possible solution to a given problem.
Have you seen these scopes in the wild? Do you lean towards one more than the other?
Image references:
Photo by Markus Spiske on Unsplash
Photo by Rob Lambert on Unsplash
Photo by ThisisEngineering RAEng on Unsplash
Photo by Clem Onojeghuo on Unsplash
Top comments (0)