For many of us, programming is a hobby as well as a job. But, I can say that for most of my professional career, as much as I enjoy programming, I didn’t really enjoy having a job as a programmer. That’s a shame because you would expect that if you do something that you love, you’ll also enjoy doing it for a living, but somehow it wasn’t that great. This is not to say I’m not grateful for earning a great living and working in a mostly interesting field, but that work can also be really fun! There are a few reasons I can think of why is that, but the main one I believe is that in many jobs, the playfulness and self-expression aspects are lost in a sea of seriousness, procedures, and politics.
For quite some time I’ve been looking for my way around this issue. It sucks to “have” to go to work, and not “want” to. Since this was the case for me many times, I tried different alternatives: freelancing, teaching programming and working 4-days weeks while doing other stuff in my day off. For this last 2 years, as my wife and I planned to start a family, I realized that I prefer to take a full-time job, and took an opportunity that came up to lead a dev team.
Being in a team lead position allows me for greater influence on the day-to-day team and work dynamics, and presented an opportunity to try and manifest the team/environment that I wished I had as an individual contributor. You can have great theories about team building, work environment, etc. but it won’t matter unless you “step in the arena”, take part in management and put your beliefs to the test of reality. The following lesson is that influence is earned, meaning my team needs to perform well for my supervisors and the organization to accept my viewpoints.
I have a lot to say about what a team/company can do to encourage a productive and fun workplace and I hope to write a series of blog posts about it, but for now, I’d like to focus on flexible work schedules as an enabler for self-expression. Why are flexible work schedules related to self-expression you ask? Well, different people have different lifestyles and the 9 to 5 workday isn’t a good fit for all, once we appreciate that, we can encourage people to “express” their uniqueness in a work schedule that works well for them. If this sounds a bit abstract, the following paragraphs share a few examples.
My flexible work schedule
Working 8-9 straight hours in the office can sometimes be ineffective for me. Some of the days I have low attention spans, or maybe I’m tired and stressed from a long week. When feeling this way, I try to go have an exercise session in between meetings, or maybe go home early, and then pick up some work back at home when I feel more refreshed. Another prevalent scenario is having to do errands in the middle of the day.
I used to struggle with having doing special adjustments to my working day since it’s often frowned upon. Now, I feel freer to peruse this type of work-life balance, mostly since I take a more meaningful part in setting the work norms. I wouldn’t say though that I feel free to do whatever I want schedule-wise, appearances are important, so I try to balance it out.
Different people have different preferences
Members of my team also have very different lifestyles, one has hobbies he likes to peruse in the day time, and he needs to arrive late to do so and then he makes up for it by staying late or working from home in the early morning. Another team member’s schedule resembles a swiss clock: always arriving and leaving at the same time, but he also prefers working a day from home every once so often. I try to encourage each team member to go and do his thing, but let him know that it is expected of him to put in the same number of hours as everyone.
Why should time even be measured?
Since our team’s success isn’t measured by the number of hours put in, but by the impact we make, why should time be emphasized at all? There are 2 main reasons I can think of:
- That’s part of the work contract - we get paid to work a certain amount of hours a day.
- The tempo of developing software is not linear - sometimes it goes faster and sometimes slower than expected - it’s good to have another signal of the work being put in, which is time.
Since it’s more difficult to measure impact made than hours worked, the first is slightly neglected while the latter is focused on by some managers. That can be a reasonable tradeoff since measuring time is simpler, but you lose a lot while doing so. Focusing mainly on time is probably the last resort for bad managers who can’t find other useful frameworks. I’d like to see how remote companies go about impact measurement, they must have advanced ways to so since they are very limited in measuring hours.
That trust thing
It’s a thin line to walk, either being too permissive about times or too strict. As someone who wants to allow flexible schedules, it is tempting to just ignore hours put in all together, or look away when someone seems not to put in the time like the rest of the team. As a manager, I think that emphasizing the number of hours that is expected from employees to work, while also making clear that you respect and encourage people’s unique schedules is the way to go.
Following up on that, it’s important not to let resentment pile up when someone seems to put in less than expected and have an honest conversation about it. This conversation doesn’t have to be a finger-pointing type of discussion. Once you let the person know you genuinely care for his work-life balance, but you sense that something is not working out time obligations wise - it can open up a place for understanding each other intentions better. Maybe it’s just a misunderstanding or perhaps there is some truth in that, either way, it’s possible to find a better way forward from that point: better communications, more actual time in the office, etc.
Engaged developers are much more effective!
From my experience, team members who feel they are being respected and valued by their managers, are much more engaged and deliberative in their roles, and respecting their unique schedules is a part of that. Being the owners of their time propagates a general feeling of ownership and responsibility.