From Code Craftsman to Value Deliverer: A Ten‑Year Programmer’s Journey
The article reflects on a decade of programming experience, arguing that delivering customer value outweighs technical perfection, and shares practical insights on embracing uncertainty, pragmatic testing, selective use of best practices, collaboration, full‑stack knowledge, and maintaining a growth mindset amid inevitable imperfections.
Before diving into the ten‑year retrospective, the author highlights a core belief: “Nothing really matters, except bringing value to the customer.” This sets the tone for a reflective analysis of how a programmer’s focus should shift from technical vanity to delivering real business outcomes.
Technical Obsession vs. Real Impact
The author admits that chasing 100% test coverage, elegant APIs, or shaving a few milliseconds can consume weeks, yet such efforts are merely means. If perfectly written code is discarded after four months because the project’s direction changes, the effort yields no value. Similarly, sophisticated observability that runs only three times a day without ever logging an issue becomes wasteful.
Embracing Uncertainty
Early in a career, developers often assume future needs and over‑engineer; later, they reserve for possible needs; finally, they accept uncertainty and build only what is currently required. This evolution underscores the importance of adapting to unknowns rather than forcing predictions.
Pragmatic Testing
Instead of debating test classifications or obsessing over private‑method testing, the author advocates writing tests that quickly confirm the system behaves as expected—ideally within a few keystrokes and under a second.
Context‑Driven Best Practices
Rules like TDD, Clean Code, or limiting method length are valuable when they address real problems. When the underlying issue is absent, strict adherence becomes counterproductive. The author stresses that the purpose of a rule matters more than the rule itself.
Using Third‑Party Code Wisely
While reusing libraries can save effort, it introduces maintenance overhead, larger binaries, and hidden complexity. Sometimes writing a small function in‑house is smarter than pulling in a heavyweight dependency.
Collaboration and Long‑Term Codebase Ownership
Working with the same codebase for years reveals the long‑term consequences of decisions, clarifies what truly matters, and sharpens engineering skills. Observing how code evolves and how teammates interact with it provides essential growth feedback.
Full‑Stack Knowledge
The author argues that understanding low‑level concepts—GC, Unix, concurrency, databases, compilers—empowers better trade‑off decisions and more effective problem solving.
Hiring Challenges
Interviewing hundreds of candidates reveals the difficulty of assessing a candidate’s “gets‑things‑done” DNA, as evaluations are often swayed by random factors.
Tool Investment and Over‑Tuning
Investing in tools like Vim, Git, shells, and testing frameworks yields high returns, but excessive configuration can become a sinkhole. Feedback loops must guide tool refinement.
Accepting Imperfection
Perfection is unattainable; aiming for 80% and treating the remaining 20% as optional provides relief and flexibility. Incremental improvements can eventually approach 99% without the paralysis of perfectionism.
Personal Reflection
Programming remains a lifelong passion despite cynicism. The author emphasizes that love for coding persists, even as priorities shift toward delivering value rather than showcasing technical prowess.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
samdeepthink
Knowledge Planet: Old Dock's Tech Chronicles Zhihu: SamDeepThinking A technical manager who still codes heavily on the front line. From junior developer to tech lead, then tech manager, now leading the whole front‑ and back‑end development team—leveling up along the way. I have some insights on programming, career development, and tech management.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
