Posts

Showing posts with the label change

Understanding is the Key

Image
Have you ever tought about the difference between a Senior and a Junior? IMHO, the best definition is that the Senior can figure out things by himself, deliver his work on time, and even teach others. A junior requires much more help and takes much longer to deliver. It's very common for companies at scale to not hire juniors. Usually, managers expect only to receive senior engineers. That works well until you start hiring juniors, because now, the things that were working just stop working. Have you ever thought about the key thing that would make the junior more productive and start getting more senior? IMHO, it's understanding. In the technology field, we think we can hack things, but in reality, we can only do a decent job when we understand what we are doing. It's impossible to make sense of software if we do not understand what's going on. What about AI and LLMs? They might allow juniors to finish narrow and straightforward tasks, but they will likely not be learn...

The issue with Feedbacks

Image
I love feedback. I believe in feedback a lot. However, not all feedback is good, not all feedback is applicable, and not all feedback is fair. Feedback is critical for course correction and growth. However feedback can be manifested in a variety of shapes, forms and intentions. I believe in creating several mechanisms for feedback because, eventually, what needs to be found will be found. Feedback is a signal; sometimes, it tells more about who is giving the feedback than the person receiving it. Other times, feedback is just wrong. Whether feedback is written or bad, it's an important signal. I believe in being more effective and in the speed of change and improvements. However, can you go fast if you dont understand what you are doing? That's my issue with feedback. Oftentimes, feedback is poorly constructed and missing essential details. So, dealing with feedback is not so different than handling high-priority, difficult production bugs. Requires deep tought, introspection, ...

Expectations

Image
Every single day, engineering teams need to do magic. Such magic manifests in several different shapes and forms. It could be by making hundreds of assumptions, figuring out what to do with little to zero context, and delivering decent solutions with proper architecture, design, comprehensive testing, and value via continuous delivery. It's a lot. In reality, most industries use Scrum/SAFE, which is far from the best way to work. In theory, when you are doing Scrum, if you do not finish a story during the spring, it's not a big deal; you go to the next one, shift the stories to the following spring, and it's all good. However, in reality, it is not exactly like that, unfortunately. That happens for various reasons: ignorance of what proper agile looks like, irrational pressure, industry pressure, and hundreds of other uncontrolled and hidden variables. Lean is all about learning to see waste, remove it, optimize it, and improve it with more quality. Companies, unfortunately...

My third book is out: Continuous Modernization

Image
After 7+ months of hard work, my third book is out. Introducing:  Continuous Modernization : The never-ending discipline of improving microservices, monoliths, distributed monoliths, individuals, and teams at scale. Modernization is something I have done over and over in my life. Modernization is something that all companies need and will always need. The need for modernization will never go away, even with LLMs and AI. Technical debt, Anti-patterns, and bad decisions do not take days off. Complexity never shirks and continually grows. Companies do not stop getting bigger and doing more and more software critical to growth, delivering value to customers, and staying competitive and relevant in the market. We need a better way of doing software to drive the best outcomes out of us. Continuous modernization is the counterforce to technical debt and anti-patterns. Continuous modernization is how to continually improve, even when you think it's impossible and nothing can be done. We ca...

Beyond Code Deltas

Image
Code review it's standard practice. Most of the industry does this via some git-based tool like Github, Gitlab, or any other flavor. These tools are based on deltas or diffs. They are really good for spotting what changed, so you can get that single character who would give you a big headache. When I started working with software, there was no git; people were using CVS in the best case when code was not being versioned in a folder with the sufix backup. I learned to do code reviews without any Delta tool. However, any CVS tool would have a diff capability there. IMHO Deltas are not enough nowadays, dont get me wrong, they are useful, but they have several gaps and issues. I'm not trying to blame the tools or to start any rant or say that CVS is better than Git, which it is not. I simply want to take a different perspective on reviews.

Manage Work not People

Image
Lean / Kanban was always about managing work instead of managing people. Often mention as Manage the flow. Organizations are about organizing people, but they should be about organizing work instead. As organizations grow, it's harder to make an impact and easier to get benefits. Safi Bahcall, the Loonshots book, says that as organizations are growing, the perks become much easier to get rather than impact(outcomes). That's why politics and empire-building strike. Leaders need to be explicit about managing flow. Otherwise, organizations tend to focus on local hierarchies and produce local optimization(classical Lean issue).  If we should manage work/flow instead of people(Some coachs also called it to manage the system). Should we have teams? Are teams silos? Are silos always bad and wrong? When should we create a team? When should we decommission a team? Work often happens on teams, people leave and join companies because of teams, but would teams get into the way sometimes? ...

Learning: Sometimes is not about fun

Image
We are this idea in IT thats just one kind of learning. This IDEA is wrong. We also associate 100% that FUN = LEARNING. So if we are not having fun? Are we learning? Some people could say no - worst than that - they give up - so if its not FUN i wont pay attention, i wont continue because clearly i`m not learning anything. Some activities like CODING its cool, its fun and for sure you sometimes i dont see the diference between work and fun and learning they all look like the some thing.  Thats amazing but not only with FUN the man lives :-) Most of my BIGGEST learning came from my BIGGEST failures, stress and NOT FUN at all moments. There is no single person in this world that does not suffer. Everybody suffer.  Some people suffer more than another ones but suffering does not make difference between the poor or the rich, the old or the new, the cool or the boring, the manager or the coder.

IT Good and Bad Spots

Image
Everything in life has good an bad things - there is no just win model - for sure there are things that are better than others but trade-offs will always exist. What's the greatest things around IT? There are several ones. The more I think I got into the *Framework Dilema* so what's the framework Dilema? It means as more as one constraint make it stronger it's also what make you weeak.  Let's say flexibility its a strong advantage it also be the source of the weakness - this is the duality I'm talking about.

Drunk Call Anti-Pattern

Image
Have you ever call someone drunk? Often is very bad idea. Everybody can say that, is not even hard to notice. Why is not hard? Simple because everybody knows when you are drunk your could not be yourself actually.  The booze will make you not think straight, will not pay much attention to details, it's easy to loose control and not only make mistakes but loose the ability to do good calls - in other words make right decisions. 

Driving fear out through passion and patience

Image
If you want do something why dont you do? Most because there is fear around your, sometimes this fear is real other is not, in business fear will always happen and for some stuff you do you always will need to be careful. Some organizations or systems are more complex and political tham other but you need be very careful because sometimes things are not impossible as we think they are. Is easy to see things as worst as they are because we fell safe this way. So how we overcome fear? For me is a matter of passion and patience, first of all you need to love what you do otherwise you wont be able to drive any change, secondly still talking about you passion you need to be yourself.

Focus, Persistence and Faith

Image
I think i lot. I mean it. Our life is so short and spend so much time just doing stuff without realizing if that what we really want todo. Our education is all wrong we dont learn how to learn, we dont learn how to love, we dont learn how to forgive, we dont learn how to figure out when keep doing keep pushing versus when we should say thats enough. Some people do shine and other dont, why? Maybe because some people refuse to give up, is very easy to give up, actually you might think i`m crazy, why keep pushing into a direction if you have so many choises, you have some many opportunities, well thats depends what is your motivation. The ones who go and make things happen is the ones who dont give up.