all posts tagged 'management'

Choose Boring Technology

🔗 a linked post to » — originally shared here on

I saw this article referenced while reading Bill Mill’s recap of relaunching a website, which in and of itself is a delightful read for those of us who nerd out on large-scale system architectures.

I am almost certain I’ve read Dan’s piece on boring code before, but I wanted to share it here because it serves as a great reference for those of us who are sick of making bad tech stack decisions for bad reasons.

In particular, the ending here sums up my experience consulting with many different tech teams:

Polyglot programming is sold with the promise that letting developers choose their own tools with complete freedom will make them more effective at solving problems. This is a naive definition of the problems at best, and motivated reasoning at worst. The weight of day-to-day operational toil this creates crushes you to death.

Mindful choice of technology gives engineering minds real freedom: the freedom to contemplate bigger questions. Technology for its own sake is snake oil.

The teams which move the fastest are the ones who are aligned on a vision for what is being built.

Often, these teams hold a “strong opinions, loosely held” mentality where they decide what tools they’ll use, and they’ll use them until they no longer solve the problem at hand.

Put another way: in a business context, experimenting with your tooling is a huge organizational expense that rarely yields a worthwhile return on investment.

Your focus should be on what you are building rather than how you’re building it.

Continue to the full article

What are you getting paid in?

🔗 a linked post to » — originally shared here on

A long time ago, a manager friend of mine wrote a book to collect his years of wisdom. He never published it, which is a shame because it was full of interesting insights. One that I think a lot about today was the question: “How are you paying your team?”

With this question, my manager friend wanted to point out that you can pay people in lots of currencies. Among other things, you can pay them in quality of life, prestige, status, impact, influence, mentorship, power, autonomy, meaning, great teammates, stability and fun. And in fact most people don’t just want to be paid in money — they want to be paid some mixture of these things.

When I was in college, the phrase “it’s all about the perks” became something I ironically said often when people described their jobs.

I’m realizing as I get older just how true that axiom is.

Continue to the full article

An Unreasonable Investment

🔗 a linked post to » — originally shared here on

You want some free leadership advice? You build yourself by building… by helping others. The selfless act of helping humans will teach you more about being a credible leader than any book.

Your career is not your job. It’s the humans you help along the way.

Continue to the full article

Dependency rejection

🔗 a linked post to » — originally shared here on

Dependencies seem to be all around us, both in the real world, and in programming. And they are perniciously distracting in just this way. Have you ever noticed how rare it is for you to just do something?

If so, you might have been worrying, up front, about dependencies.

Being a senior developer means you spend most of your time stressed out about the optimal way to get something shipped.

But I don’t just see that stress manifest in my professional life. Ask my wife how many side projects around the house she wants me to do that have not even been started.

It’s why I admire people who just start projects with no fear.

And it’s a trait I find myself trying to instill in my children, who will naturally jump into a task with both feet and zero regrets while I’m impatiently hovering over them, fretting about “safety” and messes that’ll need to be cleaned up.

Continue to the full article

The Engineer/Manager Pendulum

🔗 a linked post to » — originally shared here on

The best frontline eng managers in the world are the ones that are never more than 2-3 years removed from hands-on work, full time down in the trenches. The best individual contributors are the ones who have done time in management.

And the best technical leaders in the world are often the ones who do both. Back and forth.  Like a pendulum.

Continue to the full article

I Accidentally Saved Half A Million Dollars

🔗 a linked post to » — originally shared here on

I saved my company half a million dollars in about five minutes. This is more money than I've made for my employers over the course of my entire career because this industry is a sham. I clicked about five buttons.

Oof, this is a very good read that hits pretty close to home. I’ve seen stuff like this in several organizations I’ve worked with.

I wonder why it’s so prevalant?

Continue to the full article

Can't Be F*cked: Underrated Cause of Tech Debt

🔗 a linked post to » — originally shared here on

’But,’ you say, ‘premature optimisation is the root of all evil! Duplication is better than the wrong abstraction! Don’t be an architecture astronaut!’

The developers I’m thinking about already know of all those takes and have internalised them long ago. They know that sometimes ‘good enough’ is the right choice given the constraints of a project. They know that sometimes you need to cut scope to stay on-track. They know that sometimes it’s better to wait to learn more about a domain before rearchitecting a system. And yet in spite of those constraints their output remains golden. These are hard working motherf*ckers whose diligence and perseverance put other devs to shame.

Other devs… like me.

Sometimes, I just CBF.

Continue to the full article

How to Limit What You Say "Yes" To

🔗 a linked post to » — originally shared here on

I’d like to offer a tool to put in your emergency kit for shifting self-sabotage to self-care and going from overcommitted to well-resourced. And that is managing for whole capacity—rather than simply time or money. In other words, don’t ask, “Can I squeeze this in?” when presented with an opportunity. Ask, “Do I have what I need to do this well?”

Continue to the full article

There's still no silver bullet

🔗 a linked post to » — originally shared here on

Saying “use the right tool for the job” is easy, but actually selecting the right tool for the job is anything but. Good tools are hard to find, hard to evaluate, hard to learn. We have constraints, we have biases, we have shortcomings.

But that’s all part of the work.

And if you “just use Go” or “just use React” or “just use Postgres” for every problem that crosses your keyboard, you’re just not putting in the work.

I’ve only worked in agencies my entire professional career, and that work has honed two important traits of a good engineer: curiousity and agility.

Being curious gives you the ability to explore new tools and understand how they work.

Being agile (not in the project management sense, but the “moving freely and quickly” sense) gives you the ability to deploy those tools to solve increasingly complex problems.

It’s not that I don’t have a standard set of tools I reach for when solving a wide swatch of problems (Rails, Postgres, etc.), but as I get older, I’m finding that I am more willing to engage with newer tech.

I come from a background of writing Javascript by hand, but I'm starting to play more with Vue and React, and I can see why people like these tools.

Same thing with CI/CD pipelines. I always thought they were more fiddle-y and brittle than they were worth, but that's because I've generally been a lone wolf. In a team context, they are extremely useful.

If you keep hearing noise about a new technology, it's probably worth taking a look over the fence to see how that tool could be used.

Continue to the full article

Being Glue

🔗 a linked post to » — originally shared here on

Managers: If your job ladder doesn’t require that your senior people have glue work skills, think about how you were expecting that work to get done.

Glue people: Push back on requests to do more than your fair share of non-promotable work, and put your effort into something you want to get good at.

Our skills aren’t fixed in place. You can be good and lots of things. You can do anything.

Continue to the full article