As a Software Engineer, having a consistent approach to be as effective as possible is crucial.
This thread goes over the framework I use. I& #39;ve polished these steps over the last 20 years, and I believe they are a fundamental piece of my success as a developer.
https://abs.twimg.com/emoji/v2/... draggable="false" alt="🧵" title="Thread" aria-label="Emoji: Thread">
https://abs.twimg.com/emoji/v2/... draggable="false" alt="👇" title="Rückhand Zeigefinger nach unten" aria-label="Emoji: Rückhand Zeigefinger nach unten">
This thread goes over the framework I use. I& #39;ve polished these steps over the last 20 years, and I believe they are a fundamental piece of my success as a developer.
I start by splitting every project into small iterations 1 or 2 weeks long.
The process I& #39;m about to explain applies to one of these iterations. I then keep repeating it over and over again.
(This works regardless of any other process/methodology that your team uses.)
https://abs.twimg.com/emoji/v2/... draggable="false" alt="👇" title="Rückhand Zeigefinger nach unten" aria-label="Emoji: Rückhand Zeigefinger nach unten">
The process I& #39;m about to explain applies to one of these iterations. I then keep repeating it over and over again.
(This works regardless of any other process/methodology that your team uses.)
During every iteration, I go through seven different phases:
1. Organization
2. Estimation and Commitment
3. Prioritization
4. Execution
5. Review and Delivery
6. Presentation
7. Reflection
Let& #39;s talk about each one of these in detail.
https://abs.twimg.com/emoji/v2/... draggable="false" alt="👇" title="Rückhand Zeigefinger nach unten" aria-label="Emoji: Rückhand Zeigefinger nach unten">
1. Organization
2. Estimation and Commitment
3. Prioritization
4. Execution
5. Review and Delivery
6. Presentation
7. Reflection
Let& #39;s talk about each one of these in detail.
I take all of the work I want to accomplish during the iteration and do the following:
1. Break it down into smaller pieces
2. Capture all the necessary information
3. Make sure I understand the ultimate goal
4. Come up with a way to measure success
This phase focuses on three main goals:
1. Estimate the necessary effort
2. Estimate the potential value
3. Negotiate a healthy commitment with stakeholders
This is my last chance to assess whether completing the work is possible.
I go through the list and prioritize it.
Depending on the context, I usually focus on a couple of different goals:
1. Maximize throughput
2. Minimize risk
I move on to the next phase whenever I know the next task I should focus on.
This is where all the work for the top priority task happens. A mash-up of the following activities (not necessarily in this order):
1. Design
2. Development
3. Testing
4. Refactoring
When I finish the task, I move to the next phase.
Am I fulfilling the goals I established at the beginning of the iteration for this task?
Are there any teams that need access to this? Do they need this packaged and documented?
From here, I move on back to phase 3 and repeat until all work is done.
Now it& #39;s time to work on how I need to communicate and present my work to the rest of the team and stakeholders.
1. What& #39;s the appropriate language?
2. What should I highlight?
3. How do I communicate value?
4. What should I deemphasize?
This is the time I use to think about the work I finished during the iteration.
1. How did it go?
2. What did I learn?
3. Is there anything I& #39;d like to improve?
4. How did the team receive the work?
5. What& #39;s the temperature of the project?
This process has helped me focus tremendously, so I& #39;ve been using it for years and years.
I have it tuned in a way that maximizes "delivered value" and trust from those around me (managers, clients, teammates.)
https://abs.twimg.com/emoji/v2/... draggable="false" alt="👇" title="Rückhand Zeigefinger nach unten" aria-label="Emoji: Rückhand Zeigefinger nach unten">
I have it tuned in a way that maximizes "delivered value" and trust from those around me (managers, clients, teammates.)
Here is a diagram capturing the entire workflow.
Hopefully, you find this process useful to improve your own approach.
https://abs.twimg.com/emoji/v2/... draggable="false" alt="👇" title="Rückhand Zeigefinger nach unten" aria-label="Emoji: Rückhand Zeigefinger nach unten">
Hopefully, you find this process useful to improve your own approach.