This common idea (search it) that sometimes you need to “slow down to go faster” has come up many times throughout my career. What it essentially means in the web development context is that we sometimes need to slow down releasing customer facing features in the short-term to focus on internal processes that will eventually make our velocity much greater in the longer-term. This may include increasing unit test coverage, automating builds, deployments, and other pure DevOps measures to increase the overall flow of work through the product team.
The easiest way to tell when you need to slow down…
I'm really careful about labeling things bugs in the code. Because to me, a bug is a failure of a software developer to do their job. Their job is to write code to satisfy the given requirements. If they’ve failed to meet the given requirements, there is a defect in their craftsmanship which we call a bug.
Normally though, what I have seen most often is that a developer will get a feature request with 5 specific requirements. The developer will then write fully unit-tested code that fulfills those five requirements and everything's fine. However, the QA team, using the…
In boxing, imagining your opponent training harder than you before showing up in the ring and mopping the floor with your face is a nightmare scenario that you can use to motivate yourself to work harder while there’s still time to train. You can make your nightmare an ally that pushes you to outperform your real opponent.
Product managers can use this trick alongside their other analyses to generate more competitive feature roadmaps. Just imagine a software competitor that shows up tomorrow and announces features that make you shake in your boots, so to speak. What would that competitor look…
Estimations are usually wrong. They're time consuming and inaccurate. There are plenty of estimation strategies like t-shirt sizes, Fibonnaci numbers, and other weighting systems. Then comes the “poker planning.” The idea is that these humans are supposed to sit around a table, look at a piece of work and vote or come to some kind of consensus on the level of effort required for each one through the wisdom of the group. That sounds okay on paper, but in practice, it's so time consuming people seldom actually do a full fledged poker planning session. In reality, tech leads normally split…
As a webdev team, we have several core values that help guide our decisions day-to-day. Here are a few examples:
A past refrain in internet culture when someone told an outlandish story is, “Pics or it didn’t happen.” We say the same thing here except for tests. Test provide 1) runnable documentation of business rules, 2) a great practical way to ensure devs ponder and cover edge cases, and 3) a guard against regression. We all know this though. Ask any developer anywhere if they think tests are good and necessary and they’ll say, “of course!” Then, ask them if…
There are several great takeaways from Lorenzo Gomez’s, “The Rack We Built: The Good, The Bad, and the Ugly of Creating Company Culture.” The advice most often mentioned though is:
Everyone wants to be a valued member of a winning team on an inspiring mission.
According to Gomez, when you and your team feels the above is true, there will be high morale, loyalty, enthusiasm, collaboration, and ultimately improved business outcomes.
Let’s examine each of the three main parts:
Nobody want to be a disposable cog in a machine. They want to be a valued member of the team. People…
After reading some of Rob Parnell’s work, one notion stuck with me that has helped make much better use of my time , especially at home. The idea is that at any given moment you're either being a producer or consumer. You should evaluate your current actions every second and strive to be a producer all the time.
Eating junk food, scrolling through social media, and watching funny videos on YouTube are examples of activities where you are acting as a “Consumer” of that content. They are instances where you are not adding value to the world or to…
Intel, Google and many other successful organizations espouse using OKRs to guide their business strategy implementations. Here, we’ll get a basic idea of what OKRs are and how they are used in business and in life.
Let’s start with an example:
Say you are having a dinner party tomorrow night at 7pm and you want to have homemade chocolate cake for dessert.
Your goal is thus:
“Have a homemade chocolate cake, like the one pictured below, ready for my guests to enjoy by 8pm tomorrow night.”
Notice that your goal is clearly defined with a due date, so you know…
We've all learned that when setting goals, you want to set “S.M.A.R.T” goals. “S.M.A.R.T” here is an acronym for:
All of these are great and should indeed inform your own goal creation strategy. However, there's one more piece you should add on to it which is a
Consequence of failure.
If you fail to meet your goal by the due date, you need to have a big consequence — big enough to motivate you to take this goal seriously. This happens naturally with high-urgency/high-importance tasks that most of us are stuck dealing with every day…
Back when I was interviewing for my current role, the notion of calling yourself a Full-Stack Web Developer came up, and the interviewer asked me what I thought it meant. My answer was pretty simple: it’s just the idea that given enough time, I could create and deploy the whole application by myself.
This would include designing, coding, and testing the
Then, you have to be able to deploy it — somewhere. Perhaps you’re not an expert in cloud operations, but you should at…
A 12th-year web dev building products and leading teams at Plus One Robotics in San Antonio, Texas, USA