Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Optimize for Developer Happiness
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ben Balter
April 26, 2016
Technology
0
290
Optimize for Developer Happiness
Why how you work is as important as what you work on
Ben Balter
April 26, 2016
Tweet
Share
More Decks by Ben Balter
See All by Ben Balter
A community of communities: Empowering maintainers to grow communities around their code
benbalter
1
1.3k
Fostering a culture of collaboration
benbalter
0
230
Growing open source communities on GitHub around your WordPress plugin or theme
benbalter
1
260
It takes a digital village
benbalter
1
510
Open source workflows in highly regulated environments
benbalter
0
99
The technology is the easy part
benbalter
2
310
How to foster an open source culture inside Government
benbalter
3
2.5k
Open source inspired workflows for open (and closed) geospatial data
benbalter
0
170
10 ways people are (mis)using GitHub Pages for fun and profit
benbalter
6
650
Other Decks in Technology
See All in Technology
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.3k
usermode linux without MMU - fosdem2026 kernel devroom
thehajime
0
230
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
2
170
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
170
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
230
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
4
1.8k
Webhook best practices for rock solid and resilient deployments
glaforge
1
280
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
180
GitLab Duo Agent Platform × AGENTS.md で実現するSpec-Driven Development / GitLab Duo Agent Platform × AGENTS.md
n11sh1
0
130
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
120
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
5
3k
Featured
See All Featured
How GitHub (no longer) Works
holman
316
140k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
200
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
220
Making Projects Easy
brettharned
120
6.6k
Evolving SEO for Evolving Search Engines
ryanjones
0
120
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
49k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Transcript
! Optimize for developer happiness Why how you work is
as important as what you work on @benbalter
CONWAY'S LAW "organizations which design systems... are constrained to produce
designs which are copies of the communication structures of these organizations"
! Developer-centric development
! STARTUP the fairytale
Low value High value Startup Established firm Ideas Process
Low value High value Startup Established firm Geeks Suits
! What does your organization optimize for?
! Happy shareholders Successful software Efficient developers Strategic management
! Happy shareholders Good software Happy developers Happy Customers
! You can make software without MANAGEMENT
! You can make software without COMPLIANCE AND OVERSIGHT
! You can't make software without DEVELOPERS
! DEVELOPER HAPPINESS Optimize for and the rest will follow
! Developer happiness (Inside|Outside) the firewall
! Inside the firewall
! Traditional software development
! When outcomes can't be measured, institute process
! Daily, synchronous meetings to manually shuttle information around the
organization
! Decisions made in person, in hour-long blocks with
all stakeholders present
! Blocking, human-based processes
! Email as the least-common denominator
! Organizational knowledge lives (and dies) with employees
! bus_factor++
! Open-source development
! Transparency solves for process
! The constraints of open source
! Electronic
! Available
! Asynchronous
! Lock-free
! Prefer systems that naturally CAPTURE AND EXPOSE PROCESS
! Open source inside the firewall
! Open source is a PHILOSOPHY AND A WORKFLOW
not as an alternative technology
! How to WORK LIKE AN OPEN SOURCE PROJECT
! 1. Share to the widest extent possible
! Openness breaks down silos, reduces duplication, and minimizes on-boarding
time
! 2. Minimize developer friction
! Friction (n) the time it takes to go
from "I want to contribute" to "I have contributed"
! Common scripts to rule them all http://githubengineering.com/scripts-to-rule-them-all/
! PREFER CULTURAL CONSTRAINTS to technical and administrative constraints
! Non-blocking is better than blocking
! Never force a human to do what a robot
can
! ChatOps, DevOps, Hubot, and CI
! If you liked it you should have PUT AN
API ON IT
! Outside the firewall
! APIs make developers happy
! Openness makes developers happy
! Two caveats
! 1. Open up almost everything
! 2. Openness is about more than just throwing 0's
and 1's over the firewall
! Treat your data with the same respect that developers
treat code
! Open source, inner source, APIs, & open data all
foster communities around shared challenges
! Be the hub, not the single point of failure
(or innovation)
! Adopt an expanded definition of stakeholders
! Ensure all stakeholders have the opportunity to contribute
on equal footing
! Decentralize governance
! Minimize information imbalance
! 1. Work in the open
! 2. Propose and discuss improvements in the open
! 3. One shared, public issue tracker
! 4. Minimize synchronous meetings (and memorialize them when necessary)
! 5. Extensive, automated tests
! How do you optimize for developer happiness?
! Inside the firewall systems that capture and expose process
! Outside the firewall treat external stakeholders as internal stakeholders
! No really, how do you optimize for developer happiness?
! TECHNOLOGY is the easy part
! Bureaucracy is an organism
! Inoculate with small doses of culture and innovation
! Involve all stakeholders early on
! Start small and go through the motions
! Create a "feedback" repository both internally and externally
! Open data Open governance Open tooling
! DEVELOPER HAPPINESS Optimize for and the rest will follow
! Optimize for developer happiness Why how you work is
as important as what you work on @benbalter