It’s Doodle Tuesday again!
Sometimes I just feel like doodling a smoke tower, spewing a cloud of black smoke. A dark figure standing next to it. Call me a “ray of sunshine.”continue reading
The tech industry thrives on innovation. Building innovative software products requires constant design and architecture of creative solutions. In that context, I am not a fan of design by committee; in fact, I believe that it is more of a disease than a strategy. It afflicts teams with no leadership or unclear leadership; the process is painful, and the results are abysmal.
Usability issues plague software products designed by committee. Such products look like collections of features stuck together without a unifying vision or a unique feeling; they are like onions, built as a series of loosely connected layers. They cannot bring emotions to the user because emotions are the product of individual passion. ...continue reading
It’s Doodle Tuesday again!
My doodles are generated somewhere in between consciousness, dream and deep focus. I am not sure where this one got its characteristics, but it turned out slightly disturbing. It was a long day.continue reading
Being able to build high-performing engineering teams is a non-negotiable skill for engineering leaders. It is the difference between successful and failing technology companies.
I have been thinking about this topic for many years, studying and decoding what exceptional leaders do to create great teams. During this time, I refined a list of what I believe are 11 must-have elements. I kept it in one the many thousands of Evernote notes that organize my life, and I finally decided to share it.
First, let me give you the summary of the elements in the form of a MindMap infographic. I debated between publishing this view at the beginning and at the end of the article. I decided to go for the beginning, as I hope it will spark your curiosity for the many details that you’ll find in the rest of this post. ...continue reading
Like most industries, tech doesn’t have a standard for roles and titles, even in the area of engineering leadership. However, some patterns can be found replicated in most software companies. I’ve discussed the technical side of this equation in Software Engineering Job Titles Explained and 19 Types of Developers Explained.
In this post, I am focusing on engineering leadership roles and what they are accepted to mean. Depending on the company, some of these roles are also job titles; others might correspond to one or more job titles, might not exist at all or might be implicit functions. ...continue reading
What Is a Leader?
Leadership is a poorly understood concept that is often confused with position or title. The confusion is due to the expectation that someone with an influential role must be a leader. However, that expectation represents an ideal, not always a reality.
Some people who climbed the ladder end up being weak leaders at their new level. They get there because were competent in a different role and one of two things occurred: either they reached a point where the power they acquired corrupted them, or they were promoted into a level of incompetency, fulfilling the premise of the . ...continue reading
Doodles are a natural product of a stream of consciousness created during periods that require concentration and abstract thinking. I never know when a Doodle is going to go, but I know immediately what patterns it will be following. Starting a meeting Doodle is like taking a path, and walking it until you are tired, without questioning it or really knowing where you are.
This week’s Doodle is a bit of an exception. It started with a line of star-people, and it ended up being about banners. I did this on a Rocketbook Everlast, letter size, using a purple Pilot Frixon. ...continue reading
When I was programming 100% of my time, it was my job to write robust and maintainable code. My work needed to be well documented, designed with the proper level of abstraction and as bug-free and efficient as possible. I also had to come up with good ideas for how to resolve problems and create viable products.
As a developer, I had to be right a lot of the time. Being wrong when writing code resulted in bugs and other issues. Regardless of code reviews and testing, dumb ideas in software code have a way of costing an ever-increasing tax. ...continue reading
There are very few things that can ruin your day as much as Git being down. That’s exactly what happened to BitBucket (and the whole Atlassian suite) last week on 3/2/2018. This doodle commemorates that rare and unpleasant occurrence. Hopefully, this is not going to be a recurring theme.continue reading
Engineering Productivity Is Critical
Software engineering leaders need to hire, organize, manage and lead talented and productive engineering teams. A productive team is capable of ideating, innovating and ultimately delivering what the business needs at the time it needs it.
Software Engineers are well-paid professionals and often represent the life and blood of the organization, but also one of the largest cost centers in the budget. For that reason, there is unavoidable scrutiny on the productivity of every engineering team and the allocation of its resources. ...continue reading