A First Programming Job Requires Experience, But… How?
A question that aspiring young developers ask me all the time is: How do I get the first programming job that I need to build the experience required by most programming jobs?
It appears like a chicken and egg problem. You need work experience to get your first job, but you can’t get that experience without the first job. It might seem like an impossible riddle. In reality, it is far from impossible. Here are five strategies that will not fail you.
Strategy #1 – Acquire Experience Well Before You Finish School
I worked a lot while I was still in school, and it made my life much easier later. Before finishing my studies, I accumulated a substantial number of professional programming experiences that made me into a senior developer even before I was interested in a full-time job. ...continue reading
Developer’s personalities shine in odd ways. One them is in a (sometimes) subtle sense of humor, choice of words and attitude that you can find in code, code comments, and error messages. It often feels like a stream of consciousness that reflects the human reality of a moment in time.
I collect those gems and here I am sharing with you some of my favorites. Some I found myself in the code I worked with. Others, I collected from various sources. All have been stripped of anything that could be considered IP. ...continue reading
An Easy Statement To Make
Some statements are kicked around regularly like an empty Coca-Cola can in a deserted parking lot frequented by teenagers. They become so common that you don’t even pay attention to their true meaning. Are you ready for a Deja-Vu? Here it is:
People need to be held accountable.
How many times did you hear it during a post-mortem meeting or retrospective? I lost count!
You won’t find many people that disagree with it. It is a non-controversial statement. If you say it in front of you boss, you might feel like you are winning points. It implies that you hold yourself to a high standard compared to “all those other people who are not being held accountable.” ...continue reading
I recently come across a cool tutorial titled “How to Draw a Stick Figure: a Complex Tutorial.” It might seem odd that a stick-figures drawing tutorial could be interesting. In this case, it really is. The tutorial inspired this Doodle Tuesday post.continue reading
Management is not for everyone.
The skills required to code and the skills needed to manage people are very different. Being a good manager is also not the same as being a good leader. Moreover, being a good manager of developers requires being able to think like a developer.
Most engineering managers start as developers, writing code full-time. At some point in their career, they reach a fork in the road. The sign pointing straight ahead says, “technical path,” and the one on the left says, “management path.”
The straight path continues through a familiar technical landscape. In this direction, most problems are solvable logically and intellectually, with tools and systems built to help. The biggest challenge on the technical path is keeping relevant with the time. Technology changes at an impressive speed, and staying still is a death sentence. ...continue reading
The story of Bolbo that I published on Wednesday received a ton of attention, and stroke a chord for many people. I received dozens of questions about him, his habits and lifestyle. In this post, I am going to answer some of them.
When does Bolbo go to bed?
Bolbo tries to go to sleep around 10 pm. That gives him about seven hours of sleep. Not enough to kick his caffeine habit, but sufficient to be productive the next day. Sometimes he becomes immersed in a project and forgets to look at the time. When that happens, he doesn’t go to bed until midnight or even one o’clock. That is when he knows he is going to have a rough day at work the next day. ...continue reading
Bolbo is the name of my mental framework for the quintessential software developer. I draw it with a square jaw, black messy hair, round glasses, a cynical sense of humor and a snarky attitude. He doesn’t exist in the flesh, he never did and never will. He is a fictional character that I use as a thinking model in a few situations. For example, I write code comments as if I was trying to explain to him how the code works. I mentioned this in 9 Software Engineering Career Mistakes To Avoid At All Costs. ...continue reading
I recently spent three days at my company strategic offsite. It was an amazing time during which I had the honor to discuss the company’s plans for the future with a group of super smart and accomplished people.
At the very beginning of the offsite the moderator asked us to draw how we imagine the company. This Tuesday’s doodle is the result of that exercise. It represents the mathematical symbol Pi with roots and long tendrils, going deep and reaching many areas of a person’s life. ...continue reading
Taking risks and making mistakes is part of the learning path to greatness. Failing quickly and often is a hallmark of success. Nevertheless, aiming to avoid making the same mistake more than once should be somewhere high on your priority list.
Personal experience is the most powerful way to learn. But, knowledge acquired through other people’s experiences can shortcut your way to success and save significant pain. In particular, being aware of common mistakes that other people make can prevent falling into avoidable traps. ...continue reading
This week I am publishing a messy two full pages doodle from January 2015. You can click on it to zoom it. Click on it to see it larger.