

John Fremlin's blog: Enterprise software wheel of life
source link: http://john.freml.in/enterprise-software-wheel
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

John Fremlin's blog: Enterprise software wheel of life
Waiting for updates: connected
Posted 2013-09-26 03:42:00 GMT
I've worked at big companies for a while and when planning a software project you need to figure out how to be a organisational team player and fit with all those other teams and their roadmaps. Here's a handy guide to how well another team's project will help yours:
Official state Apparent suitability for your project,after meeting the other team Actual state Development 100% fit, can accommodate your capricious feature requests, designed to scale while consistently providing low latency, beautiful UX in the next quarter/half Non-existent, vaporware, not used for anything Production Team tells you to go away until next quarter/half, will not discuss your use-case Bug-ridden mess failing at its first use-case Deprecated Unmaintained, so no team to talk toYears of consistent operation for real use-cases, could do easily do yours if it weren't scheduled to be retired in the next quarter/half
The kicker being, of course, that the next quarter/half never seems to come around.
A ring of truth perhaps, and why is this?
I would say, the typical incentive structure primarily: proposing a project, you need to make the business case, and once that's locked in (the production stage), you don't want to compromise that by taking on something else — as the first case determines how you'll be evaluated. And once it's working, you will have many requests to fix the tough issues that have small wider benefit — but which are important to the users of the system harming your relationship with them — so it's time to create another project.
How to fix it? Do not emphasize project ownership (outcomes ownership instead), reward engineers who are willing to get their hands dirty across traditional team boundaries, and let them participate in evaluating the performance of the people who work on those other teams. In nearly every business there are teams with conflicting goals, and often directly conflicting, but it is possible to foster a culture of technical collaboration despite that.
A little thought at the beginning of a project in terms of its design can have a huge effect on the lives of everybody who has to work with it, and a little thought about the way people are included even more so. It's too natural for engineers, and engineering managers, to think there are no major feature requests for their system, simply because they have never spent time with the people who interact with the system every day.
Recommend
-
16
John Fremlin's blog: Testing systems at scaleWaiting for updates: connectedPosted 2020-04-04 22:00:00 GMTTest driven development is trendy. Interview loops and promotion...
-
13
John Fremlin's blog: Rotating an image with OpenCV and PythonWaiting for updates: connectedPosted 2014-04-05 19:07:00 GMTOpenCV is the most widely used open-source v...
-
26
John Fremlin's blog: Exactly-Once in multithreaded async PythonWaiting for updates: connectedPosted 2020-07-31 22:00:00 GMTPython's builtin greenlets with asyncio are com...
-
15
John Fremlin's blog: Recruiting software engineers and their CVsWaiting for updates: connectedPosted 2017-03-03 23:00:00 GMTHaving conducted hundreds of software and othe...
-
15
John Fremlin's blog: A single point of failure is okWaiting for updates: connectedPosted 2016-10-05 01:11:00 GMTMaking big systems out of many computers, people often end...
-
13
John Fremlin's blog: Nothing was a billion dollar mistakeWaiting for updates: connectedPosted 2018-01-19 23:00:00 GMTTony Hoare, inventor of quicksort and many other foun...
-
16
John Fremlin's blog: Kotlin is a better JavaWaiting for updates: connectedPosted 2017-03-12 23:00:00 GMTThe Kotlin programming langu...
-
12
John Fremlin's blog: Curse of business logicWaiting for updates: connectedPosted 2019-05-18 22:00:00 GMTPeople complain that a piece of software is bogged down in te...
-
9
John Fremlin's blog: Square CTF 2017 Grace HopperWaiting for updates: connectedPosted 2017-10-18 22:00:00 GMTSquare put on a great compet...
-
6
John Fremlin's blog: Building software in the cloudWaiting for updates: connectedPosted 2021-03-02 23:00:00 GMTCompute is elastic now so running 1 job for 1000 minutes co...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK