Recently, someone's asked me how much time I code in a day. It's hard to tell the exact number because it depends on my agenda for each day. And every day is different based on tasks I get, how urgent the tasks are and my goals for each sprint or a period of time. Also, I believe coding is a result of a thought process. So, I'd prefer to think about it as a part of my daily activities and agenda. Generally, here is what my agenda looks like.
- I usually start my day around 8.30 - 9am
- First thing I do is check emails, slacks and calendar. This usually doesn't take up much time for me.
- Next, I'll open Jira to see what I have been doing so I can resume working on it.
- I'll work on my tickets until there is any meeting. I've moved to a new team recently and my meeting is mainly just daily standup at 10.30am. Sprint planning is once every two weeks. Sprint retro is once a month. Design session is once in a while. So I don't have much meetings these days. So let's say, average daily meeting time is 30 minutes.
- The rest of the time is for working on tickets. It doesn't mean I'll spend all that time just to code. For example, when I take on a task of building a new endpoint, I'll need to do analysis and planning on how to do the ticket. So I can answer questions such as what does this endpoint do, what are current available resources to build it, how to optimise the api calls for the endpoint to save the costs, etc.
- There are many things I don't know so I'll have to do research, read on materials, or watch online videos, tutorials to figure out what I need to do. It takes me an average of 2 hours on this self-researching.
- Also, I'm still new to software development, and it means I bump into problems more than seniors do. If I can't work out solution for my problems for about 30mins to an hour, I'll seek help from my team mates. The main communication is from Slacks and Zoom. Depends on my team mates' availability and how complex the problems are, the communication will take more or less time. Some days I'll need their help more than usual, some days I don't need help at all. Let say, it takes me an average of 1 hour to communicate to my team mates over the problems I have.
- I take about an hour for lunch and break before going back to my tasks.
- I sign off around 5.30pm
- But it never ends there. Because I would like to be better at my job so I study and code mostly every week night and sometimes during weekends as well. On average, I spend around 2 - 3 hours on studying at night. The topics are different from time to time. Recently, I've been learning more about unit testing. Upcoming, I'll need to work on ElasticSearch and Kafka as our team will adopt these technologies in the next sprint.
So this is a day in life of myself as a software developer. What I would like to change about it is to have less time bugging my team mates about my problems. This means that I need to have better understanding about business requirements and system designs as well as better technical skills. That's what I'm working on in my self-learning time. And I really do hope that I will become a better software developer in the future with good planning and good practice.
Thanks for reading!
Comments