←back to thread

210 points dakshgupta | 3 comments | | HN request time: 0.437s | source
Show context
bradarner ◴[] No.41841731[source]
Don't do this to yourself.

There are 2 fundamental aspects of software engineering:

Get it right

Keep it right

You have only 4 engineers on your team. That is a tiny team. The entire team SHOULD be playing "offense" and "defense" because you are all responsible for getting it right and keeping it right. Part of the challenge sounds like poor engineering practices and shipping junk into production. That is NOT fixed by splitting your small team's cognitive load. If you have warts in your product, then all 4 of you should be aware of it, bothered by it and working to fix it.

Or, if it isn't slowing growth and core metrics, just ignore it.

You've got to be comfortable with painful imperfections early in a product's life.

Product scope is a prioritization activity not an team organization question. In fact, splitting up your efforts will negatively impact your product scope because you are dividing your time and creating more slack than by moving as a small unit in sync.

You've got to get comfortable telling users: "that thing that annoys you, isn't valuable right now for the broader user base. We've got 3 other things that will create WAY MORE value for you and everyone else. So we're going to work on that first."

replies(4): >>41841863 #>>41842117 #>>41842527 #>>41848369 #
ramesh31 ◴[] No.41841863[source]
To add to this, ego is always a thing among developers. Your defensive players will inevitably end up resenting the offense for 1. leaving so many loose ends to pick up and 2. not getting the opportunity for greenfield themselves. You could try to "fix" that by rotating, but then you're losing context and headed down the road toward man-monthing.
replies(1): >>41842161 #
1. CooCooCaCha ◴[] No.41842161[source]
Interesting that you describe it as ego. I don’t think a team shoveling shit onto your plate and disliking it is ego.

I feel similar things about the product and business side, it often feels like people are trying to pass their job off to you and if you push back then you’re the asshole. For example, sending us unfinished designs and requirements that haven’t been fully thought through.

I imagine this is exactly how splitting teams into offense and defense will go.

replies(2): >>41842181 #>>41842235 #
2. dakshgupta ◴[] No.41842181[source]
To add - I personally enjoy defense more because the quick dopamine hits of user requests fix -> fix issue -> tell user -> user is delighted is pretty addictive. Does get old after a few weeks.
3. FridgeSeal ◴[] No.41842235[source]
> For example, sending us unfinished designs and requirements that haven’t been fully thought through

Oh man. Once had a founder who did this to the dev team: blurry, pixelated screenshots with 2 or 3 arrows and vague “do something like <massively under specified statement>”.

The team _requested_ that we have a bit more detail and clarity in the designs, because it was causing us significant slowdown and we were told “be quiet, stop complaining, it’s a ‘team effort’ so you’re just as at fault too”.

Unsurprisingly, morale was low and all the good people left quickly.