“so that we have a single process for the entire organization”
is a death toll of software.
This is how large organizations slow themselves.

Unifying process gives every change a wide impact, and that means change must be slow.
“But architecture is important! It affects the whole organization! We must take it seriously.”

Importance implies a single process; a single process implies slowness.
Single careful process does _not_ imply the best solution is reached.
Instead, it retards iteration.

A single careful process _does_ imply a defensible solution will be reached.
So what’s the alternative?

architecture, library choice, security procedures -

What if we made it _less important_?

Explicit scope, separate clouds, whatever it takes to make strong boundaries.
If architecture of one hunk of software doesn’t impact the software cared for by other departments, then the decision is less important to the overall organization.

Clearly defined, stable APIs mean: worst case is a local replacement.

Keep big decisions local.
If we work at boundaries, limiting the scope of our decisions, making each one _less important_
then we can let process vary across the organization. And that means we are open to progress. To iteration, instead of ossification.
yet, if you’re the person with a high-level position in the organization, why would you want to make anything in your responsibility _less important_?
That would make you look less important.

Our hero culture gets in the way. 😭

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Jessica Joy Kerr

Jessica Joy Kerr Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @jessitron

9 Nov
"The future of developer experience that you can start using right now: devcontainers"
@avdi gets specific at #QConPlus
@avdi Why are containers better for development than other forms of virtualization?
Because they aren't virtualization.

In the right circumstances, development can proceed at native speeds on ordinary computers.

@avdi #QConPlus
@avdi A devcontainer is like the ramen noodles of onboarding to a project: just add hot water and you're ready to go.

@avdi #QConPlus
Read 12 tweets
9 Nov
What matters in developer experience varies as your business grows. @PhillipaAvery from @netflix #QConPlus Startup, Growth, maturity, and renewal-or-decline pictured a
@PhillipaAvery @netflix In the Startup and Growth phases, it's all about velocity. In Maturity, it gets interesting. We need stability without killing velocity.
@PhillipaAvery @netflix In renewal/decline, parts of the software need stability while other parts need velocity.
(I missed the cool picture, it was pretty great)
Read 7 tweets
9 Nov
Today at #QConPlus , @girba shows graphs that reveal hidden dependencies in code.
Somehow this code reveals its own properties and relationships in custom-made developer experiences
Glamourous toolkit: gtoolkit.com
"empowering developers to create their own tools for every one of their problems" @girba #QConPlus

This is a superpower of developers: we can craft our own work environment.
For example, when viewing build logs: as you find a new problem, add some custom highlighting so that next time it jumps right out at you.
Read 12 tweets
25 Aug
Anyone who says to you “this architecture is universally applicable”
is probably selling something,
and not doing a very good job at selling something.

@tlberglund #DevoxxPL
Don’t use event-driven architecture for a small system or for an exploratory spike.
“learn what you’re trying to do before you elaborate your architecture.”
@tlberglund #DevoxxPL
Databases don’t go away when you’re using events.

If nothing else: when you need lookup by multiple keys, databases are necessary views on the system of record (which is the event log).

@tlberglund #DevoxxPL
Read 7 tweets
19 Jan 20
"Work capacity is not the same as productivity."

@coda lays down the maths on limits of organizational growth and how to overcome them.

codahale.com/work-is-work/
Adding people scales at best linearly upward, at worst geometrically _downward_.

Two things you must constantly seek in order to get more done with more people:
1. "Constant pursuit of force multipliers"

Instead of adding more people to the same task, change the task to be done.
Develop more-complex internal structures, such as tooling teams that facilitate many development teams.
Read 10 tweets
3 Jan 20
“The similarity of team mental models is a good predictor of team performance”

@TeamTopologies
Optimize for the team, and the benefits compound in a positive way.

@TeamTopologies

Optimize for the task and the costs compound until we are all stuck in mud.
See the team as the fundamental unit of delivery.

Build an API surrounding each team [to other teams and the wider organization.]

@TeamTopologies
Read 15 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Thank you for your support!

Follow Us on Twitter!

:(