Mindful Development

Person working calmly at a desk with a laptop, notebook, and minimal workspace setup

Mindful Development is understanding exactly what you're working on at any given moment, and what comes next. Whether you're building a new shiny API, or supporting a system - being mindful helps you be more productive and less reactive.

Plan

  • Ask yourself: What are you planning on getting done for this session? Be specific! Write down a list of tasks down or reference them from your favorite project management tool, and add your own ballpark estimates on how long you think each task will take.

  • Ideally, you should do this before you start, or the night before. Outline what you're building, and how you're going to build it. If you're fixing a glitch, think of your debugging strategy and what may be causing the issue and/or steps to replicate.

  • Build your to-do list before you start, but ideally the night before.

  • Your most productive hours are earlier in the day. Don't waste your productive hours on context switching and building to-do lists. If your list is ready from the get-go, you'll spend this time producing instead of thinking about what you should be doing.

Execute

Once you start, the clock is ticking. Be mindful of the following:

  • Understand when you're getting sidetracked, and write what sidetracked you down - but don't let it disrupt your flow & mission.

  • When you're writing code, you're putting down what you've already thought of on paper. Once you've actually started developing, you shouldn't be heavily thinking about architecture - this helps you focus on writing quality code and making split-second decisions that will affect the maintainability of your project for years to come.

  • PR / Push Frequently

  • Aim for small PRs that cover 2-3 small to medium sized tasks, or one large task.

  • Ideally, you should be submitting multiple PRs on a weekly basis.

  • If no one reviews your PR, tag them on Slack.

  • If you tag and everyone is busy - go ahead and merge it in - as long as it's not going to production directly. PRs can be reviewed after the fact.

  • Don't be shy about pushing your code before PRing, and asking for input on specific commits or code decisions.

Stay Accountable

  • Track your time, and be aware of how long a specific task is taking you.

  • If you're 2X over your original estimate, ask for help from a fellow team member.

  • If no one is available to help right away, move on to something new, and come back to it later.