So, what "is" a Solution/Software Architect?

https://hackernoon.com/38-actions-and-insights-to-become-a-better-software-architect-f135e2de9a1b

Just like this person, I get asked a lot "so what do you do?".

Until a few years ago (when I got caught out and it was very embarrassing), I used to say, "Oh me, I'm a plumber". 
Said in an Ironic Software development way, meaning I work on all the software plumbing that is hidden out of view, but is essential to making the things do what you need them to, not the literal "water based / kitchen / bathroom plumber person" (of whom I have the utmost respect for, as they do a tremendous job that I am more than happy to pay for their services to do as it is beyond my skill set).  Yep, that was an awkward 15 minutes chatting in a kitchen with a real plumber, wanting to open the oven, crawl inside and hope they walk away.  anyway....

So now, I just say, "Oh me, I help companies to build Skynet".  This creates two options of conversation continuation.
One: it stops.  Absolutely fine by me, then I can talk about my custom car :-)
Two: it continues and we start to talk about AI, Machine Learning, 3D printing robotic heads, advances in Visual Recognition, automated cars, personal assistants in cars, chat bots and then eventually it comes down to the description that I "help to design and build" all those things.  Then I talk about my custom car :-D


Today, I stumbled upon this article that I think is a great guide.

https://hackernoon.com/38-actions-and-insights-to-become-a-better-software-architect-f135e2de9a1b


https://hackernoon.com/38-actions-and-insights-to-become-a-better-software-architect-f135e2de9a1b



He lists out all the key points, I won't repeat the details as you can go read the original article, but here are the key headings.

10 key skills every Architect should have:

  • Design
  • Decide
  • Simplify
  • Code*
  • Document
  • Communicate
  • Estimate & Evaluate
  • Balance
  • Consult & Coach
  • Market



*What I did like was the following snippet - it's something I've been advocating for a long time and it is amusing because this very morning I was actually getting hands-on building an AngularJS6 app using RXJS, NodeJs/ExpressJs and Compose for MongoDB and grafting IBM AppID onto the front-end of the app, in order for me to understand how it all fits together but not just "box drawing", but actually seeing how and why you have to set these components up in different ways for different implementations (it's not 1 size fits all)

Theory is important. Practice is equally or even more important if you do not want to become an Ivory Tower Architect



BTW - for the millennials out there, no, you do not get given the job role/title of "Architect" because you've worked in I.T. for a year and think you deserve it, because you're the "best" and you've "worked hard" (for a bit) and you're "so much better than the rest of the team".

Sigh.  It takes time.  That's the sad truth, it's a bit like all professions, it takes time to learn by doing, learn by experience, learn by knowledge, learn by learning from others, from a variety of experiences and projects/implementations.  You don't get given the responsibility on a plate.  That responsibility is heavy, it can cost peoples lives, peoples ability to work/pay their bills, it can make or break an entire business, it can also make or lose millions of dollars/pounds.  You don't take on that level of responsibility lightly and it is unfortunate to say, but, you do actually have to fail.  Yep, you cannot always win.  You actually have to fail at some things in order to learn and grow.  It's about being able to mentally and emotionally accept those failures and build from them and learn from them that makes you a better Architect.




One of these days, I'll quit working with Technology (yeah, right, I'll laugh when I see that happen!) and I'll live on a Dutch Barge on a nice canal someplace, where I'll be working on the internal water plumbing for the boat and the engine....and then might look to upgrade a few components to be a bit more self-aware.... :-D

Comments