I have been working for a consulting firm since early last year. I’m a programmer and this is basically my first “adult” programming job I’ve had since graduating and briefly working part time as a coding tutor.

When I started at the firm I expected that I would be on one or more consulting teams and I would be learning/working with new and emerging technologies. Instead I was placed on a development team at a corporate banking client, working remotely with other employees of the bank. The bank has a big problem with turnover so having been there for a year I’m seen as one of the more senior members on my team and have been given more challenging projects to work on more or less independently. I’m responsible for the analysis, the coding and most of the testing.

I was assigned a new feature in early October. I was given a brief description of what the whole feature would do, but it wasn’t immediately clear which parts I’d be responsible for. It was a while before I was able to speak with folks about the requirements for my side so I realized I ended up doing work I didn’t need to. Now I understand the requirements but I spend more time researching than actually writing code.

I meet with my project manager remotely every day for standup and he’s always asking me for percentages of work done or some metrics for completeness and I don’t really know what to tell him so I just throw stuff out there. (“Oh probably another few weeks or so.”) I think for a while there I was just saying I knew what I was doing 1) because I was trying to “fake it until I make it” and hope that I make some breakthrough and figure it all out, 2) because in order to ask folks questions I’d have to understand the problem well enough to have some context for what to ask, 3) because the only two people, senior devs at the bank, who could help me have ten other things assigned to them each (not an exaggeration) and they can both be really flippant and unhelpful when I have reached out to them in the past.

I have so much pressure at the firm to put in a good face for the firm with the client. I have tried within the past year multiple times to get transferred to another role but I just get met with pep talks about how I’m “doing better than I think” and how “they really need me there”. When I express frustration with the bank’s management structure and levels of communication my handlers are like “yeah…some clients are tough!” So it seems like I’m stuck. Unfortunately I cannot afford to simply quit.

But I feel like I’m getting close to just blurting out that I don’t think I can do this at all the next time my project manager at the bank asks me how far along I am, despite supposedly having put work hours towards it. I have so much stress and lingering dread that I will be fired, that it will ruin my career, and that I can’t do anything to change my situation. It’s hard to manufacture enthusiasm for finding other jobs because at the end of the day, even though I’m not getting as much done as I need to, I feel burnt out with stress and don’t want to do anything resembling work. Frequently when off the clock I’ll randomly think about work while doing other stuff and I’ll break down and start crying. It’s bad. Every part of me just wants to be gone from this but I can’t leave and I also can’t make things better. The cracks are beginning to show and I feel like it’s not possible to get the support I need. Should I continue to push through the feeling that failure is inevitable and try to succeed? Or should I go mask off and hasten the end?

    • The field of programming is so large that I’d hesitate to call any sort of company culture “the norm”, but I would definitely recommend you stay away from the bottom end companies like these. They’re clearly taking advantage of your inexperience and grinding you up for a quick buck, and they’re in no way indicative of a typical or fair programming position.

    • There is a kernel of truth in “it’s gonna be like that everywhere” – everywhere in consulting, that is. Consulting is its own special world where appearances can matter as much as results. Given how much the client pays for your time they damn well expect an expert who gives them 100% at all times.

      I tried consulting as a developer, coming in with eleven years of experience. I didn’t last a whole year. It just wasn’t for me. Too annoying, too much focused on billable hours and appearances. I felt that I spent most of my time dealing with things entirely tangential to what I was there to do: Make software.

      I’ve talked to a number of people about why I quit, from my boss at the consulting company to hiring managers to my new colleagues. All them said the same thing: Most people who leave a job at a consulting company do so because they don’t like consulting. Most often they sign up with their current client but if they don’t have one they like they do like me and take to the open market. Happened a million times before.

      Consulting just isn’t for everyone.

      My recommendation is to find a nice medium-sized company that you will directly work for as a junior developer. That should cut down on the bullshit to a fair degree and let you gain experience in your actual field, not in dressing sharp for your Zoom calls.