How did I get involved in software architecture & design? Do I think of myself as a software architect? Here are some insights about my career, which have helped me and ultimately led me to KZhead and produce videos about software architecture and design. Here's a bit about my journey writing in software.
🔗 EventStoreDB
eventsto.re/codeopinion
🔔 Subscribe: / @codeopinion
💥 Join this channel to get access to a private Discord Server and any source code in my videos.
🔥 Join via Patreon
/ codeopinion
✔️ Join via KZhead
/ @codeopinion
📝 Blog: codeopinion.com
👋 Twitter: / codeopinion
✨ LinkedIn: / dcomartin
📧 Weekly Updates: mailchi.mp/63c7a0b3ff38/codeo...
#softwarearchitecture #softwaredesign
I want to share my random story: like 2-3 years ago when I searched youtube for some code related topics I stumbled upon this channel. And I hated it. I was so focused on "show me code", so focused on "copy pasting" actual implementation that I got angry for not getting it. I was narrow minded. I was not ready yet. Around a year later I found some other Code Opinion video and I liked it. I remembered that hey I disliked this guy, what happened? I rewatched the videos I didn't like and I liked them. All that happened was me changing, I finally understood what and why you are talking about things. Realizing this was maybe the biggest "AHA" momemt in my career. Since that day this is one of my favorite KZhead channels. Thanks for all Derek.
Great to hear! Really appreciate the comment.
I have made the experience, that from time to time it makes sense to read something that totally overwhelms me. That I can't even comprehend partially. Because some years later, often something magically clicks into place, I revisit what I read, and it totally starts to make sense. I avoid doing that too often because it's frustrating, but the feeling if it turns out beneficial is soo good.
@@mariusg8824 I kinda do the same. I have cycles when I put in 15+ hours of work outside of the 9-5 to learn something that is overwhelming for me in the start and after that I take some weeks resting where I just game and chill.
Thanks for sharing your path, Derek!
I'm really glad you decided to forge your own path and create a KZhead channel. You're always generating great content. Keep it up!
I just want to say, thank you for starting this channel, i've learnt alot from you and i am sure i'll learn more on the future. SO THANKS.
great job man
I had a very similar experience and couldn’t agree more on how valuable the experience of having to “learn and do it all” when you are in a small team / company. It really forces you to understand the true cost of your decisions and pushes you to be decisive in your approach.
I follow you since a long time my friend, and I can say you are one of my prefered channels to watch. Never too geeky and grounded. People love spaceships, and I've learned a lot with yourself. After coding for a lot of time and the need to evolve now to cloud and other new challanges, I really appreciate your effort since brings a lot to the table as an Engineer. We can't spend too much time in complexity, things shouldn't be a rocket science all the time, because you will end up losing yourself. Its like having a organized desk rather than a space ship desk. Do your work the simplest way possible and understand your domain. Domains are difficult, technology shouldn't be! otherwise we are stuck to the tech and the DOMAIN, which is just horrible and you can't be happy doing your job. Really nice stuff, I appreciate you and your consistency, bringing a lot of value to the comunity! Thanks
I've been following you here a couple of months ago and really I got a lot of knowledge that I appreciate. I've just made a subscription to your mailing list now too. Thank you
Thanks for watching!
pretty cool journey Derek :) the type of content you make is very helpful. KZhead kind of lacks this type of content and knowledge that you share, especially since you've been in a role in your teams, where you need to make decisions. Or at least help and guide your team on making those decisions, that are significant enough to make us want to be right :) Keep up the amazing content 💯 !
Thanks. Appreciate you watching
We have similar experiences (started in 95 on asp3, IIS and vb6 and being the lead developer on small cie). I always find your insight right on and exact. Keep doing your great work!
Thanks for sharing!
Man, this is great stuff. I feel that throughout my career I've been searching for individuals that could offer advice on this level, and sadly I just had never really found it many of colleagues. Early on I was eager and truly wanting to learn from those who had walked the paths before me, but I didn't have opportunities to interact with many seasoned developers that could provide some clear solid, and even general insights like this. And trust me, it wasn't for a lack of asking! Still today I'm always seeking to learn from those around me, even those that may not be in the most prominent roles or positions. But today, it almost seems the field is very saturated with relatively young engineers who have tremendous responsibility but lack a certain breadth and depth of knowledge ... not just technical skill, but a certain amount of practical wisdom. That could be conjecture, but it has been somewhat my experience thus far. Some of these individuals are unfortunately put into "architect" type roles. But all that to say, even as I opine, I'm thankful for these videos. Very helpful and I'm still learning!
Glad you find them helpful! Appreciate the comment
Thanks :)
👍 great video
Lokking forward to your next one! A reminder of one of my previous video idea (that you've also commented): A video about adding new microservices later in time to an Event Driven Architecture. How do we sync data that normally would rely on events to be kept updated and synced between microservices? How does it relate to some DevOps automation?
Yup, still got it on my list.. it's closer to the top.
Thanks for the video. Imho, this makes more clear that you bring a specific view and mindset to architecture, due to your long career. I wonder if it would help to put a name on it. Like... architecture for high-performance business web applications?
Thanks for the suggestion. I'll put some thought to it as it generally are large business systems that are decomposed.
I have been thinking about what it means to be a Software Architect. It is less of a profession, but rather a skillset leading to a position. You don't simply earn that title because you know how to structure code according to some architectural pattern - there are other aspects that are often overlooked by technical people such as coders. Software is not just code. It is about resources: like infrastructure and people. The costs of running and maintaining stuff. Not just during development. An SW architect is responsible for keeping all this together throughout the lifetime of the product (or his employment).
Yes, I also believe you need to be on the ground floor to evolve the architecture. It's not static. And the only way that can happen is being aware of the context and how it's changing.
@@CodeOpinion Yes. That is why I don't take the title "Software Architect" or "Solution Architect" (another one) as serious depending on the context it is being used. SW Architecture is not something decided upon by one person above everybody else. They are not all-knowing. Titles themselves mean very little.
In late 20s i was a Delphi fan too:)
ur lucky i did vb3.0 to 6.0 or MSVC
I guess in terms of opinion, there's never be right or wrong approaches. What matter is how you decompose your system. That's the first thing that comes to mind. However, I found out that ppl who wrote articles in the other platforms, they sometimes lacking of proper real world implementation. So everytime, I always need to refer back to this channel for a guidance. Yes, what you share might be just an opinion. It might not be the right one, but from what I can see, it's the closest thing that the business needs. Keep up the good work. Keep sharing more informative articles and opinions
Thanks! Glad it can be a reference point.
Derek, I find your videos the most close to my experience as well, literally every statement is true. Again, you are right that Architect role must be a part of regular job of any experienced developer. It's rater not just a role but one of activities, same as refactoring, operations, etc. Same as you, I worked in many small projects and had same experience. At a some point I moved to a classic Architect position in one big Enterprise software product. It was a big difference, mostly disappointment because of detachment from the daily dev process. I literally wasn't able to make right decisions because of low knowledge of existing code. Now I think the Software Architect as a dedicated position only exists in Waterfall-style projects. What do you think?
I think between cross-boundary teams theres a fit for the exclusive role.
True. It was really the case, designing communication berween services, drawing domain boundaries, authZ protocols, etc. Funny that I forgot that, it was in the beginning and was super exciting.
Derek, do you still write code for a project or are you just busy with high-level design?
Writing code everyday. Always have.
Do you work on a single project or multiple projects at the same time?
I'm a big fan of this channel. But I still think that Derek is always saying "don't do this... don't do that", or "So you are doing this, that everyone else is doing too? hahaha, I can't believe it", and some times he lets you without alternatives.
Appreciate the feedback. I never really thought this to be the case but perception is reality. Do you have any examples? Those would be good videos to follow up on.
I'm Brazilian and I really like your teaching and content, keep going! 👏
Thanks for the support.