Today, most tech jobs come with a flexible schedule. Nobody wants a team of stressed out, overworked and underpaid developers working on their project. No matter how strong the passion for your job is starting out, to sustain this passion, one needs balance and the ability to prioritize. When you start out as a Ruby on Rails developer, you’re faced with some important questions: How much time should you spend billing? Will you have time to take care of normal daily tasks? What does a typical day look like? What about a social life?
To help you out, let me chart out our daily routine which breaks down into three categories in CognitiveClouds.
- Client work
- Business development
- Personal time
Morning: Client work
10:00 am: I'm in my workspace by ten in the morning. I grab my morning cup of coffee and set up my workstation. The moment I power up my laptop, I go through my emails, go through what meetings have been set up for the day and then move on to the bug reports, or the feedback I've received from my QA. Often there are about four-five small bug fixes at the start of the day. I like to take care of these seemingly trivial fixes all at once before moving on to whatever larger feature I am working on.
11:00 am: Most of my engineering team is in the office at this point. So if I need a senior engineer to look over some problematic code I have been trying to debug, I try and catch them early to get their opinion before they move on to tasks that really eat up their time.
12:00 am: These are my golden hours, I'm simultaneously working on bug fixes and small features while amending pull requests I had submitted after a more senior engineer reviewed it. I typically work 45-50 minutes and then take a 10-15 minute break.
1:30 am: I take a 45-minute break to have lunch and relax a bit with my team members. We try and make a point of having lunch together. This is also a perfect time to make those important personal calls, like setting up a doctor's appointment.
A Day In The Life Of A Ruby On Rails Programmer
Afternoon: Business development
2:30-6:00: You'll catch me working on features, submitting pull requests, closing existing pull requests, creating testing checklists for the QAs and grabbing snacks at regular intervals. The Project Managers and senior engineers are around and working right next to you at this time of the day, so there's a lot of noise around with people discussing specifics of feature implementation and impromptu brainstorming sessions. By late evening, I sit down to plan what my agenda for the next day is and how close I am to meeting the week's agenda.
Night: Social life
I make a point to take care of my physical health, so I make sure I get my evening jogging session every day. After, there's always an animated discussion of the day we've each had around the dinner table. I end my day by calling family and friends, and then it’s time to get ready for bed.
In the beginning, I believed the more hours I put into work, the faster I'd grow. But as you age, you realize there needs to be a balance. You cannot treat your career as a race. It's a marathon. Make sure you enjoy not just the stream you've chosen but also the people you're working for. The habits and practices of the senior engineers I worked with greatly shaped my own development practices as I was constantly imbibing their feedback as I was developing.
All days don't go as planned. Life will continue to throw surprises at you, but that's no reason not to have a plan. Always start your day with an agenda and learn to adapt. Planning out your average day and especially making sure to prioritize your personal goals will ensure that you're able to meet your professional commitments, adapt to changing situations, and stay happy.