User Avatar

Tim Urian

Software Engineering

4y ago

Writing about programming and learning.

What could you accomplish if your whole engineering team was 1% more productive?

Too often we're hypnotized by shipping features or fixing bugs, activities that provide direct value to the customer.

Providing value to your fellow engineers has the potential to increase your whole organization's velocity.

Here are 10 places to start:

1. Enhance Speed

... of slow tests, deployments, development environments.

Nothing kills forward momentum like waiting!

2. Enhance Ease

... of getting setup or finding the resources you need.

Developers love automation, and smooth experiences keep them from being derailed.

3. Reduce External Dependencies

Can you use one library where you currently use two?

Is there something you could bring into your codebase instead of importing?

Eliminating dependencies can remove complexity from your code and reduce ongoing maintenance burden.

4. Keep Dependencies up-to-date

Keeping your versions near the most recent major release will put the best tools in the hands of all your developers.

5. Automate security measures

Too often security is an afterthought.

Automate some of the burden with tools like Snyk or Dependabot (which is also helpful for those upgrades!).

6. Increase Developer Happiness

Be the person who organizes a talk, or a hack-a-thon.

Work has an emotional component, and I believe we all work best when we are happy.

7. Decouple code

Tight coupling happens naturally, and before you know it the dependency graph of your code is a tangled ball of string.

Even minor refactors can help straighten things up and open code up to extension.

8. Decouple architecture

This might be a controversial measure, but pulling a feature out into it's own service can be just what the doctor ordered.

Especially if that feature has special database needs.

9. Increase adherence to standards

If your codebase has been around long enough you have multiple styles running through different eras of code.

Fixing up code style is one of my favorite "waiting for a meeting" tasks.

10. Share Knowledge

'Lunch and learns', posting interesting posts you've read in slack, or creating documentation are all great ways to make sure everyone is on the same page.

These are just a couple of ways that you can add value to your organization.

Features can get customers through the door, but I believe improving developer experience can create a sea change in the output of your organization.