by lazy_afternoons on 4/9/23, 7:10 PM with 68 comments
by dgunay on 4/9/23, 9:09 PM
I would characterize myself as more of a "Martial Artist" at heart. I find creating quality code gratifying for its own sake. I have an academic CS education. The majority of my early career was spent at a mature organization with lots of process in place and a reputation for engineering excellence. I love tools engineering and other internal work that makes others more productive, rather than the trench warfare of supporting consumer apps with thousands and thousands of users.
Yet, over the past two years at startups I feel I have taken on a lot more "Street Fighter" characteristics in order to cope. I let objectively bad code slide in reviews if it puts out a fire or we won't scale to meet its limitations soon. I fix serious issues and operational headaches under the table, because they would fester for months unprioritized otherwise. I start talking directly to management at the year mark instead of waiting for raises, because most startups just don't bother setting any expectations at all on that front.
It's important to realize that not all Martial Artists will be that way forever. And your organization might be what makes them hang up their black belt and pick up some brass knuckles. Or vice versa - a Street Fighter might tire of building and rebuilding half-baked spaghetti wire solutions and decide to go somewhere they can just focus on one thing and collect a paycheck.
by virtualritz on 4/9/23, 10:35 PM
"For any software project to succeed, you need three types of developers:
The kamikaze. They kick off the project, they don't care about the mountain on the horizon or the abyss less than ten clicks ahead. They get everyone on board and they will also give the column directions and keep them on track.
The soldier. They just march on and on. They may take longer to solve a problem, but they don't tire. They keep at it.
The sniper. Any really difficult issue they will just take out. But they need calm and solitude to do their deed."
by neilv on 4/9/23, 8:53 PM
Even though it's unsavory, I did use a "scrappy street kid fighter" analogy on HN a couple months ago, criticizing some academic attempt to make declarations about software engineering. Then spun that into one of my favorite topics, which is startups and other smaller companies playing house self-destructively, by cargo-culting behaviors of insulated massive megacorps. https://news.ycombinator.com/item?id=34753570
Instead, we need to lean more towards scrappy street-smarts than we have been during much of "tech". (We also need to always learn from our predecessors and conteporaries, but to be smart about it, not cargo-cult, so I'm focusing on the smart part first.)
by darod on 4/9/23, 9:49 PM
by angarg12 on 4/9/23, 9:58 PM
> There are basic ground rules (clear requirements) which the opponents (problems) are NOT allowed to break. eg: below the belt punches, (changing priorities every week) etc.
Who does get to work in such an environment? I can only think of:
* Academia
* Artificial environments (e.g. leetcode, coding competitions)
* MAYBE very mature products in established companies
For the vast majority of us changing requirements, unknown unknowns and technology shifts are our daily bread. Big, unchanging upfront design doesn't work, and we've known this for several decades now.
by hising on 4/9/23, 10:05 PM
What I like with this article is the difference in how you approach a problem depending on how you are functioning as a human being. Of course it is nowhere near of the real world, but I think all of us can identify people we worked with who are really efficient on both of these "sides".
by ZephyrBlu on 4/9/23, 10:19 PM
Over time I'm becoming more and more aware of non-skill factors that affect my impact.
I'm definitely more a street fighter, and I feel limited when I'm given martial artist work and there is very little opportunity for street fighter work.
I think it can be very difficult to be a 10x engineer because you have to be in an org that has the right type of work, be on a team that's involved in that work, and be in a role in which you're given that work.
Working at a big company as a SWE (As opposed to e.g. SRE) I've found that the street fighter work is very limited and generally only specific teams and people get to work on it.
by mostertoaster on 4/9/23, 9:02 PM
by ukuuru on 4/9/23, 9:11 PM
by GenericDev on 4/9/23, 9:05 PM
by cudgy on 4/9/23, 10:23 PM
What closed group would that be, since by definition they are not part of a particular group? A martial artist sounds like the guy that got a product of the ground and would likely be part of the founder group; not likely looking to do it again.
by karmakaze on 4/9/23, 9:57 PM
> I have worked with 2 types of 10x engineers so far: Martial Artists, Street fighters
It then goes on to say which you should have. Duh if they're each 10x, both.
The article set up a false dichotomy in its premise.
by hallqv on 4/9/23, 9:20 PM
by Osiris on 4/9/23, 10:20 PM
by Animats on 4/10/23, 3:01 AM
"The Gamesman" (Maccoby, 1978) divided workers into "craftsmen", "organization men", "jungle fighters", and "gamesmen". Same concept, earlier decade.
by bitwize on 4/9/23, 10:24 PM
by mock-possum on 4/10/23, 7:52 AM
by jackblemming on 4/9/23, 11:55 PM
by 29athrowaway on 4/9/23, 9:46 PM
They have no use in a real fight, but companies are full of them.
by airocker on 4/9/23, 8:58 PM
by xupybd on 4/9/23, 9:08 PM
by altdataseller on 4/9/23, 10:00 PM
by andromeduck on 4/10/23, 8:29 AM
by whaleofatw2022 on 4/9/23, 8:24 PM
by zanethomas on 4/9/23, 10:17 PM
by davedx on 4/9/23, 9:21 PM