Patrick is a first-year developer at Groupon. Previously, he has worked as a gardener, a primary school band director, and a humanities grad student.
The trick, Patrick told us, is to develop a flow—a pattern of activities—to maintain balance and work effectively.
|Booting Up||Read and start/continue story||Read, type (for example on typing.io), greet friends, do something unexpectedly nice||Prioritize reading, videos, hobby coding, and open source contributions|
|Cache Warming||Get context / reproduce bug||Review pull requests, prioritize stories, standup||Read, write, or code something hard|
|Managing Stack||Pair up or headphones, hide chat and email, build test, code||JUST DO IT, capturing tasks/tangents/ideas quickly (perhaps on OmniFocus)||Running out of time? Go in earlier, don't stay later|
|Flushing Buffers||Commit, document, pull request if done||Get to know someone on or off your team better—e.g. at lunch/coffee||Talk with friends/family and thank them for everything. Delight someone.|
|Sudo Poweroff||Take a walk or play ping-pong||Go home as scheduled, unless you'll be fired for not finishing something tonight||Capture how you did and how you feel, go home, and unwind!|
Patrick also recommended the following books:
Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides:
Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman by Dave Hoover:
New Programmer's Survival Manual: Navigate Your Workplace, Cube Farm, or Startup by Joshua D. Carter:
AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis by William J. Brown, Raphael C. Malveau, Hays W. "Skip" McCormick, and Thomas J. Mowbray:
Elemental Design Patterns by Jason McC. Smith:
And finally, The Timeless Way of Building by Christopher Alexander. Electronic version available for free.
Reading The Timeless Way of Building helped me temper the workplace-centrism that could otherwise have made my patterns too focused only on the mechanics of work, not its sustainability/place in the worker's larger life, and I think it might similarly help new developers intuit and leverage their own local/personal patterns and anti-patterns.—Patrick Flor
Here is a video of Patrick's talk:
First Year Patterns: Surviving and Succeeding as a New Developer from Groupon Engineering on Vimeo.