1. 49
  1.  

  2. 31

    Quoting for emphasis:

    A standard workweek in the US is 40 hours a week; elsewhere it can be a little less. Whatever it is, outside those hours you shouldn’t be working, because you’re not being paid for that work. Your evenings, your weekends, your holidays, your vacations—all of these belong to you, not your employer.

    Every minute you give your employer serves to devalue your time. If you work even an extra couple of hours each day (say, commuting and taking lunch at your desk while working) you have effectively given your employer 10 extra hours a week for free, for an effective pay cut of 20%.

    1. 9

      Yep! One of the best things I heard regarding this was from a programmer friend of mine who is also a professional music producer. He said:

      I consider the time I spend commuting to work to be work time, because every hour I give to my employer is an hour I’m not spending making music. If my employer is gonna take time from my passion, they’re gonna have to pay for it.

      1. 3

        I can only speak for the US, but I feel like I have to comment on this:

        I consider the time I spend commuting to work to be work time

        I understand and support the sentiment. But if you’re literally counting your commuting time as chipping away at your 40 hours a week (or whatever it is), you should be prepared to explain to your manager how whatever you’re doing on the commute counts as bona fide work or else you’re going to be having a very unpleasant conversation with them.

        If you’re fortunate enough to commute on a bus that offers wi-fi, then it’s easy to justify counting that as work time. But if you don’t have a computer in front of you (in the case of jobs like programming that require a computer), you should be circumspect about counting that as “work.” If you’re thinking about work in that time, and your boss is okay with that, then great, but counting commuting time as work is not the norm in the US.

        1. 4

          but counting commuting time as work is not the norm in the US.

          Well, perhaps it should be.

          They pay you for the time spent walking to meetings, walking to get a smoke, navigating internal documents–and I’d bet my hat that management gets paid the same on golf games, “executive retreats”, “networking”, and other events.

          There’s no moral reason not to count time spent commuting as work–it benefits the company, doesn’t benefit you, and is required for the other work to get done.

          1. 4

            I’ve happily taken a nominal pay cut to work from home - I don’t spend that time or money commuting.

            Compensation is a negotiation - typically an experienced programmer has several options available. If you want me to work for you and you insist I show up in person, I’m going to demand an extra 20% or more to cover the time I spend traveling and the inconvenience of being out.

            1. 3

              It’s not just in the US. I have yet to discover a place in the world where commuting by car can be considered work.

              1. 5

                It’s unlikely you’ll get paid for it. But when deciding between a nearby job which pays $X and a job an hour further away which pays $X+15%, it’s worth factoring it in to your decision.

              2. 1

                I understand and support the sentiment. But if you’re literally counting your commuting time as chipping away at your 40 hours a week (or whatever it is), you should be prepared to explain to your manager how whatever you’re doing on the commute counts as bona fide work or else you’re going to be having a very unpleasant conversation with them.

                Yes you definitely need to be ready to explain it. One way to look at it is this: businesses charges their customers for every single thing (including delivery). If I’m offering the business my services as an employee, then in a way I’m the business and they’re the customer, thus I’ll charge for delivery just like they do with their customers. Sure business people would argue differently, but business people would also argue that full-time exclusive workers can still be contractors that don’t get paid insurance or what ever it is in your country that they love to not pay for.

          2. 13

            This also applies when you’re a consultant. And doubly so if you’re billing hourly. Structuring time, and setting boundaries are life changing decisions.

            When I was young, and full-time employed, it was hard for me to do any of that because I deeply under the impression that my employer was doing me a “favor.”

            It becomes harder to set these boundaries when everyone else around you refuses to. It becomes part of the culture to work way too hard. I wonder if that ties in with age, and I also wonder if that may be a part of the age discrimination that happens.

            “Ah that old person only works 9-5. They can’t cut it!”

            May we all be happy.

            1. 15

              “Ah that old person only works 9-5. They can’t cut it!”

              Back when I was working at a corporation I was quite surprised that after climbing the ladder I learned that CEO for my department and his direct superiors were thinking that people staying after hours (unasked) were doing it because they had trouble doing their job during normal working hours so they stayed on their own to ‘catch up’ with the rest.

              The lesson here is. You might be thinking that you are doing your company a favor by staying that extra hour but instead someone higher up might be thinking you’re showing signs of lower competence.

            2. 10

              I have definitely fallen into the trap described in paragraph six.

              I’m glad I work for a company that isn’t demanding to see code everyday. Still, the business has proprieties that trickle down to me and those tasks get backlogged. I feel guilty about that. Alas, I can’t do everything at once. I think I have set high standards for myself that are foolish. I constantly underestimate how much time something will take because I’ve basically told the business I will be hacking on weekends. Then I don’t. At least not on work stuff.

              I feel like Slack has become just another means of tracking if an employee is at their computer and thus at work. I just keep it open in case someone slacks me. I’m not sure if they think I am working 8 hour days. I’m not. I probably get three to fours hours in each day of actual work. Any more time then that and I’d get brain drain. This makes me feel guilty (that word again!). It’s made worse by the fact that I’m “pretending” to be working via my ever present availability on Slack.

              Learning how to set work boundaries (and boundaries in general!) has been a difficult task for me. I’m glad I read this article as it is a reminder that my life isn’t my work. Removing Slack from my personal computer and phone is a big first step.

              1. 7

                Removing Slack from my personal computer and phone is a big first step.

                This in my opinion is the best way to do it. No slack/email/foobar in your private life. Having access to those things only in the office (during work-time if you work somewhere else) forces you to keep work in the office. Also never clone a work repo to your personal computer is another rule to live by.

                I’m glad I work for a company that isn’t demanding to see code everyday. Still, the business has proprieties that trickle down to me and those tasks get backlogged. I feel guilty about that. Alas, I can’t do everything at once. I think I have set high standards for myself that are foolish.

                From my personal experience this to me screams “I get a lot of my self worth from my work”. Maybe I’m wrong, but that’s certainly how I always felt when I started to in fact get big percentages of my self worth from work. Another issue could be that you got addicted to praise for being productive. The problem with such situations is that, even if you realize how foolish it is to do what you’re doing, you still do it, and then you end up feeling more guilty about it since you saw yourself doing it but couldn’t stop.

                I constantly underestimate how much time something will take because I’ve basically told the business I will be hacking on weekends. Then I don’t. At least not on work stuff.

                It’s not too late to change your mind, and it’s not too late to inform the business about it. The longer you let this fester in you, the shittier you’ll feel. Ironically the business might not find it as bad as you do, at least that’s been my experience with such things. Have an honest conversation. A good manager is one that cares about your well being, because it’s for their moral and economic benefit to do so. Happy employees means more productive employees.

                1. 1

                  Thank you for this thoughtful and informative reply!

              2. 7

                This is so important, not just for yourself but also the workplace. Our performance and ability to assess it goes down with overwork. Regularly working over 40 hours can hurt you, your employer, and your fellow employees. Straining yourself to accomplish some imaginary deadline only to be faced with newer tighter deadlines hurts code quality, and quality of life. If it permeates the culture it will doom a business.

                1. 5

                  This isn’t a reality everyone can live up to. It’s somewhat a function of the market and your position in it. When you’re experienced, you have a pretty amazing amount of leverage (which — as this article points out — experienced developers often don’t use to the full) because the market is desperate for skilled programmers.

                  When you’re a junior, and depending on which country you happen to be, you don’t get to adopt that same attitude.

                  1. 5

                    I think you’re right about the country though I don’t agree with juniors having to be any different. Setting boundaries at work is something I did with every job I had, as a waiter, a bike messenger, a repair shop technician, and a programmer junior and not. The reason why is because I always have something other than my jobs in my life, and there’s no way I can enjoy the rest if I don’t set proper boundaries. I’m pretty certain that I “lost” in a couple of job interviews because of saying no to work on the weekends and during the grunts (in companies that are constantly in a grunt), but that’s a choice I accept for my well being, even though it means I get paid less since I have a smaller pool of places I can work at due to my unwillingness to give my employer more than what we agreed upon in the contract, and definite unwillingness to even sign a contract that says “Overtime is already compensated in the salary”.

                    I think we need to be telling juniors that they have as much right to set their boundaries as anybody else, instead of justifying pretty terrible work practices. Easiest way is to stop rewarding those terrible practices and wizardifying people who engage in them, and actually saying once every while even to semi-strangers “Hey how are you doing? I see you’ve had +10 commits every day for the past 3 weeks. Is everything alright at home?”.

                    Experienced and lead developers have to put pressure on the management, if they’re so skilled and needed then they have a saying, and in my opinion even a responsibility towards the junior developers, those who aren’t willing to take that responsibility should not be leading anybody regardless of how good they are technically.

                    Developers in developed countries have the power to do this, they just lack the discipline and the sense of responsibility. In other countries it’s a bit tougher, and I’m no fit to judge having not lived in one for a while.

                    1. 1

                      I’m not suggesting juniors should have no boundaries. That would be obviously wrong.

                      My issue is more with some of the examples given in the article, like this:

                      Imagine you’re starting a new job in a week, you enjoy programming for fun, and you want to be productive as soon as possible. Personally, I wouldn’t do any advance preparation for a new job: ongoing learning is part of a programmer’s work, and employers ought to budget time for it. But you might choose differently.

                      I know I could walk into most programming jobs without preparation, but I have plenty of experience. For a junior with no experience however, getting your foot in the door at your first coding job is pretty hard without some extra motivator for the employer, e.g. personal connections (nepotism), outstanding social charisma, and/or proven enthusiasm for the job and that particular employer. I’ve been mentoring my girlfriend for the past year, and she just landed her first coding job yesterday, so this is at the front of my mind. I’ve had a very cushy career as an experienced programmer, but I forgot how hard I had to hustle in the beginning to get my foot in the door, just as she has had to do more recently.

                      1. 1

                        That’s definitely a valid point you bring that I completely overlooked, thanks and congratulations to your girlfriend for getting her foot in the door! Do you have any other insights from the experience that you’d be willing to share with us? I’d definitely be very interested in hearing them:)

                        1. 2

                          Do you have any other insights from the experience that you’d be willing to share with us?

                          Probably nothing profound or original.

                          What I can say is that it’s seriously difficult to be both someone’s career coach and romantic partner. Those two roles are diametrically opposed.

                          Aside from that, the common reservation that some people hold of “I’m just not technically minded” is just an excuse. The motivation to begin solving problems on your own, and also being able to solve problems methodically, are both skills that can be learned by just about anyone.

                          Another misconception — especially common amongst juniors (it’s not my first time mentoring someone) — is that a programming job is solely an intellectual exercise, i.e., the job is a total meritocracy, and companies will hire the brainiest person first. While this job is somewhat a meritocracy — you do actually have to know what you’re doing — you also put yourself in a much better position by just being a pleasant person to work with. Indeed, when I got my own foot in the door at the beginning of my career, I was far less skilled than my girlfriend is now, but I won over that small production agency by being more enthusiastic than anyone else had ever been in that office. I made everyone coffee in the morning, I cleaned everyone’s desks, and I put in extra effort on evenings and weekends. I sucked, but damn was I persistent. They kept me on after my trial because it was refreshing to have someone enthusiastic in the office.

                          As for the process of actually learning things, and as I’m sure everyone on this forum already knows, the best way is just to build. There have been a number of times when I’ve had to say “stop watching videos about programming; stop going over introductory material again and again. Open up your text editor, and build.”

                          1. 2

                            What I can say is that it’s seriously difficult to be both someone’s career coach and romantic partner. Those two roles are diametrically opposed.

                            I can totally imagine. I was in a similar position for a short-term project, and I was quite relieved once it was over to be honest.

                            Another misconception — especially common amongst juniors (it’s not my first time mentoring someone) — is that a programming job is solely an intellectual exercise, i.e., the job is a total meritocracy, and companies will hire the brainiest person first. While this job is somewhat a meritocracy — you do actually have to know what you’re doing — you also put yourself in a much better position by just being a pleasant person to work with. Indeed, when I got my own foot in the door at the beginning of my career, I was far less skilled than my girlfriend is now, but I won over that small production agency by being more enthusiastic than anyone else had ever been in that office. I made everyone coffee in the morning, I cleaned everyone’s desks, and I put in extra effort on evenings and weekends. I sucked, but damn was I persistent. They kept me on after my trial because it was refreshing to have someone enthusiastic in the office.

                            That’s very true. There’s more emotional labor involved than one might think at the beginning.

                            Probably nothing profound or original.

                            Thanks a lot for your response none the less, it was a net positive for me:)

                  2. 1

                    Great!

                    But I’d not expect a bonus or the company to be flexible with you with regards to things like working from home or days when you need childcare cover.

                    1. 3

                      I’ve done this at jobs where I’ve explicitly negotiated shorter workweeks. So definitely possible.

                      In general I think it goes the other way around: if you set boundaries you are (usually) better respected. And you end up becoming more productive, too: https://codewithoutrules.com/2018/02/11/working-long-hours/

                      1. 1

                        Didn’t say you can’t set boundaries, saying if you aren’t going to be flexible with the company, I’d expect them not to be flexible with you.