2

Summary question: how can I find/create a workplace where there's enough time to do a good job, learn what's needed, and count on regular hours?

Long question/explanation: I've noticed most workplaces are "hero-based". They're generally not all the way on that side of the spectrum, but they're resistant to new process and require developers to paper over poor management (scope changes mid sprint, lack of time for tech debt, lack of time for training, poorly staffed projects, etc).

My entire career I've been a generalist and an individual contributor. I'm reconsidering that. I don't think I'd enjoy management, but most places don't really give you time to learn new things... so being a generalist means you do a lot of "brushing up" on new tech in your spare time (donating time to your employer). Should I be refusing new work if I'm unable to spend my free time learning the required technology?

My current project had a tech debt policy (X% of the time will be spent on tech debt tickets), which quickly and magically disappeared early on. Is there a way to hold management accountable? I find it strange that tech leadership generally isn't on the same level as middle management, and when they are they have to be so aligned that they allow policies that require extra work from developers like this.

Management always talks a good game, but somehow there always seem to be deadlines that are moved up, new tech that needs our dedication, or fires we predicted that we need to scramble to clean up. No amount of documentation or recommendations fix these issues at a systemic level seem to get any attention (though small things are picked up if they're cheap to implement, or if someone's willing to work extra). Even with cookie-cutter biweekly postmortems we still can't seem to get a system that prevents most of these issues outright (we really want to though, and your feedback matters). A good summary sentence for this is "you can fail the system, but the system can't fail you".

I'm looking for strategies to avoid these problems at new companies (or become aware of them during the interview process), to push back against them, or at least protect my free time. I really don't want to be a stickler making a ticket for every defect, refusing to work on new projects, or otherwise digging my heels in... but my good will has been stretched thin and I have personal goals to get on with.

2
  • I have some ideas on those questions, but if you have suggested reading I'd appreciate it as well :) – Guest3247029 Mar 27 at 22:05
  • 1
    Downvoters: what could I do to improve this question? – Guest3247029 Mar 27 at 23:37
2

Ask questions in the interview? Like:

  • How often do you switch technologies?
  • How do you support the continuing eduction of your developers?

You also asked:

Should I be refusing new work if I'm unable to spend my free time learning the required technology?

Erm, no? If your problem is that you can't learn the technology off the clock, say that, and suggest solutions. For instance, you could self-study the technology on the clock, or attend a training at company expense.

And yes, this can work. I learned nearly all technologies I am proficient with on the clock after just such a discussion with my manager. There are companies who invest into their workers.

How do those discussions go? Do you start them?

For instance like this:

  • "You next job will be the X project. We'll be working with the exciting new technology T"
  • Erm, I don't know T? How are we going to handle training?
  • Training? The framework's really easy, you don't need training, do you?
  • Well, need is a relative term, but it would allow me to get up to speed more quickly.
  • <makes some excuse why they don't want training>
  • Ok, I'll learn about Y by doing, then.

later:

  • Why aren't you done?
  • I am still figuring out how to do Z in T.
  • Why? That's easy, isn't it?
  • That what I thought, too, but it turns out that ...
  • <totally overwhelmed by the details, unable to tell you how to solve your problem, it's hard to claim that T is easy without losing face, the manager is likely to back off>
4
  • How do those discussions go? Do you start them? Can you link to any resources? I believe you but think those workplaces are exceedingly rare. I've been at a place where I was told I could pick a 2-3 day training if I could show I need it for my current work, which makes it difficult to learn something well, plus I need to find something that would actually help in 2-3 days. Also this was after a lot of asks. They gaslight and I'm not sure if I can do anything about it. – Guest3247029 Mar 28 at 13:22
  • 1
    Ask for the 5 day training then? And why is finding a training a problem for you? And if the training doesn't materialize in time, there is always plan B: self study on the clock. And if they wonder why you're slow, you can remind them that the training would have fixed that, but you're doing your best and hope to be up to speed in month. And if they make that your problem, rather than realizing its in fact their problem, then I'd look for a job that doesn't aim to exploit its workers by asking about their attitude towards learning in the interview. – meriton Mar 28 at 13:46
  • What do you do when they say no? I was promised some training once and had to keep bringing it up for 6 mo and at that point they chose it and it wasn't that useful... but I didn't feel like I could say anything because it took so long just to get in the door (I felt like I needed to encourage them in their eventual follow-through). Do you just leave when it's clearly not in good faith? – Guest3247029 Mar 28 at 14:19
  • Another question on this: I've read a related question where someone said something like "I've told management that I view unplanned overtime as a failure of management". I don't think this is always the case... but if it's frequent enough I think signs generally point that way. I still don't see a way to solve this though if they see nothing wrong, unless everyone has this problem (then people start to leave, which has definitely happened at a place or two). Short of leaving, is there a way to get management to take responsibility for the systems they have power over? – Guest3247029 Mar 28 at 15:02
0

OP, you mention

I've noticed most workplaces are "hero-based".

Hmm, I work pretty broadly and all over the world, and I would certainly say that is NOT the case.

Thank God, starting let us say 20 years ago, the "work more than 8 hours", "hero-based", "clutch-shot cowboy code" approach to software has: disappeared.

"Only idiots" work like this now. It's inconceivably that would happen at the major name companies, and, the

As you obviously know,

  • Actual software engineering is incredibly quicker than a "work more than 8 hours", "hero-based", "clutch-shot cowboy code" approach

  • Actual software engineering is incredibly cheaper than a "work more than 8 hours", "hero-based", "clutch-shot cowboy code" approach

These days, 2020, any programmer who works more than 7-8 hours is simply seen as: incompetent. Programming is just like being a race car driver: the longer it takes you to get around the track, the more hopeless you are. The all-up definition of "good at programming" is simply that you know smart ways to get it done more cheaply (read: more quickly).

So the "answer" to your question is

  1. Thank God, it's a case of "what world are you living in!" What you describe is the opposite of common reality today. The overarching, central theme and nature of "software today" is that the days of "work more than 8 hours", "hero-based", "clutch-shot cowboy code" approach are just a funny memory.

(Indeed, for OLD people, like me, one has to be incredibly careful when working that you don't do something like "work a really! long! day!" If you do, you'll be seen as: an idiot who can't program. Or ....... an old person :/ From that era.)

  1. My guess is that very simply you've had a spot of bad luck with your last few contracts or positions.

I would just move along to everyday modern-practices teams, which are the norm now (thank God).

3
  • I'm glad you haven't had my experiences recently! I certainly wouldn't like to repeat them. Any advice on finding these companies or pushing back against an environment that encourages (but doesn't explicitly require) these practices by doing the things from my post would be greatly appreciated, if you can remember back to some of those older companies :) – Guest3247029 Mar 28 at 13:26
  • 1
    yes unfortunaely I am that old ! :/ I think .. can only be you've just had bad luck. As George Lucas tells us, your focus is your reality. Bad luck is bad luck, I'm completely confident your next gig you'll be like "oh, phew!" – Fattie Mar 28 at 13:31
  • Here's hoping ! – Guest3247029 Mar 28 at 14:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .