FullStack Labs

Please Upgrade Your Browser.

Unfortunately, Internet Explorer is an outdated browser and we do not currently support it. To have the best browsing experience, please upgrade to Microsoft Edge, Google Chrome or Safari.
Upgrade
Welcome to FullStack Labs. We use cookies to enable better features on our website. Cookies help us tailor content to your interests and locations and provide many other benefits of the site. For more information, please see our Cookies Policy and Privacy Policy.

How to Successfully Plan Your Day as a Developer

Written by 
Moises Narvaez
,
Software Architect
How to Successfully Plan Your Day as a Developer
blog post background
Recent Posts
Six Ways to Handle Concurrency in the JVM
Is there value in learning Vanilla JavaScript?
How to be efficient in remote design work in multicultural teams

For the last 10+ years, I have been working as a Developer and Project Manager in projects of all sizes: huge monoliths, many microservices, apps with real-time functions and background jobs, etc. I can say that my success in every one of those projects is summed up in a single word: "Focus." 

What this word means to me is: "Work one day at a time, perform one task at a time, in the most efficient way possible."

Table of contents

One task at a time

The first question I ask myself at the beginning of the workday is:

Was there anything left pending that you were working on yesterday?

If the answer is yes, this will become my first and most important task of the day (with certain exceptions). On the other hand, if the day before I successfully completed a Ticket, Pull Request, or Research just at the end of the day, then I go directly to the next question:

What is the next task I need to work on?

Once identified, while respecting the priority within the project, I proceed to make an estimate (if it hasn’t been made already). This will help me understand how many tasks I should include in what will become my to-do list for the day.

Once I have made the to-do list, I start working one task at a time where I apply a very basic rule: "Divide and conquer." This is how each task is divided into smaller and simpler subtasks, which I will sequentially develop one by one. The key to the success of a common workday for me is to concentrate during each subtask from start to finish, focus stubbornly and seek to finish it in the most efficient possible way.

Anything else I should focus on today?

Some days I spend some time on other tasks not directly related to a project, like courses, research, tech articles, etc. These should also be included in the to-do list.

Take a break

We are social beings by nature. Evolution has made us like this; who am I to go against it? Breaks during a workday help us to clear our minds, free ourselves of stress, and improve our work environment.

I usually take at least two breaks a day (one in the morning and one in the afternoon), go for a coffee (I prefer mocha), stretch a bit, laugh at some memes, and chat with a colleague. (Only if he is not focused!)

Handle Interruptions

When we are in the middle of a task/subtask, unforeseen situations usually arise and inevitably take us out of context. What to do when our carefully prepared to-do list is interrupted by an email, text message, call, or (terrifying) production error? Depending on the source, the required time for dealing with each one is different. For example:

Production Error: Stop everything, go to the rescue, be a hero!

Email: People do not expect you to check your email very often, much less respond immediately. So if you’re doing something important, feel free to ignore emails as they land in your inbox. Instead, have certain hours of the day scheduled to check your email or check them between tasks.

Direct Message: In this case, the person who writes you is waiting for a response in less than 5 minutes. If it’s related to work, read it carefully and understand the requirements.

Once you’ve identified the requirements (from email or DM), you should take action according to the time it will take you, in this way:

Task will take less than 5 minutes: Do it immediately, but not without first writing down where you left off in your current task, so you won’t forget where to pick back up.

Task will take between 5 and 20 minutes: Respond, letting the person know that you have received the message that you will do it as soon as you finish the task you are doing. If possible, give an estimated hour. I usually do these requirements between tasks or before/after a break.

Task will take more than 20 minutes: In this case, this requirement already becomes one more task for the day. Now you must evaluate if the priority of this task is higher than the ones you have written down for today. If so, include it in your list. You’ll probably have to remove another task — that's fine, you’ll do that one the next day. Now, if the priority of this new task is lower than what you have scheduled, tell that person that is not possible for today and that you will do it tomorrow. Usually you will receive something  like "of course, no problem."

To-Do List Items

If this work methodology was useful to you, these are some of the things you would probably want to include on your daily to-do list:

  • To-dos from the previous day (if any)
  • New tasks
  • Project Meetings
  • Personal stuff
  • Technical Research/Learning

Keep in mind that the tasks must always be divided into subtasks. I wish you success in your projects. Work hard and have fun!

My fellow developers here at FullStack Labs work in their own ways, but we are all highly productive and produce high-quality solutions for our clients that they love! If you like the way I work and would like to join us, please visit our Careers page. If you would like to reach us for any other reason, please contact us. We look forward to hearing from you!

Moises Narvaez
Written by
Moises Narvaez
Moises Narvaez

For as long as I can remember, I've been passionate about building things and solving problems. What began with Lego pieces and puzzles matured into an interest using MS Paint, Photoshop, and Movie Maker. That in turn blossomed into an interest in code, which I fell in love with when I arrived at university, and I haven't stopped. I am energized by its challenges and figuring out how to solve a problem with constrained resources in the best possible way and in the smallest amount of time. My favorite technology to work with, hands down, is Ruby on Rails. Its simplicity lets you focus on what really matters: business logic. It's a great, mature, robust framework with solid methodologies. I love gaming, from NES classics to modern titles that I run on my work/game PC that I built myself.

People having a meeting on a glass room.
Join Our Team
We are looking for developers committed to writing the best code and deploying flawless apps in a small team setting.
view careers
Desktop screens shown as slices from a top angle.
Case Studies
It's not only about results, it's also about how we helped our clients get there and achieve their goals.
view case studies
Phone with an app screen on it.
Our Playbook
Our step-by-step process for designing, developing, and maintaining exceptional custom software solutions.
VIEW OUR playbook
FullStack Labs Icon

Let's Talk!

We’d love to learn more about your project.
Engagements start at $75,000.

company name
name
email
phone
Type of project
How did you hear about us?
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.