Throwaway account for obvious reasons.

I had a really similar experience as my first software dev job and this post brought up a lot of old memories. I ended up writing quite a lot, but I hope it's helpful for someone else in a situation like this. It wasn't until I started reading HN that I began realizing how common these types of experiences may be.

The company I worked for was a small consultancy specialized in customizing/integrating an enterprise software package sold by one of the big old names in enterprise IT. There were several F500 companies in their clients list.

The interview was extremely cursory and positive, like the one described in this article. I was offered a position almost immediately which was quite surprising given my lack of experience with their domain. The company also had a very "family-like" atmosphere, everybody I dealt with, including the owner, was actually very friendly and supportive throughout. Single digit headcount. There were a couple H1-B visa holders on staff, but it was not the majority. They cultivated the same kind of "we are all in this together" kind of attitude. It wasn't until I went on site for my first assignment that I realized how they operated.

I went through about two weeks of training then was flown out to the HQ of one of our biggest clients. Huge, household name F500 company, I had no experience with that kind of organization before. I vividly remember the first day on site. I am just off the flight and eating in the client's cafeteria with the owner of the consultancy and two coworkers. The owner tells me that he has told everyone on the client's team that I am a senior consultant with 5 years experience. At that time, I was just a couple years out of college with no relevant work experience, only some hobby level programming skills. I was totally blindsided and was immediately put into meetings with the client's team where I had to think fast in order to present myself properly. I was presented as a resource for the client's team to learn from, meaning I had to field questions, equivocate, then follow up later after I had asked my co-workers at the consultancy for help. I'm sure I was no use at all during those first couple weeks and I shudder to think of how I presented to the client's team. I know there was at least one other co-worker who was put in a similar position at the same time.

At the time, for me personally there was no question about whether I should go along with this or not. I had hotel and flights paid for and no other immediate career prospects. To be totally honest, I didn't immediately feel an ethical conflict, mostly a naive sense of responsibility to not let my coworkers down and a curiosity about whether I could actually do the technical work that the client expected. I was also very curious about the large, corporate environment which I had never worked in before.

I gradually learned that our consultancy's headcount was overstated by a factor of 10 to 100, depending on the client. Members of our extremely small team were rotated in and out to clients in order to give the appearance of a much larger team. I believe my boss' strategy was to use the inevitable staffing difficulties this caused as leverage in negotiations with our clients, in order to demonstrate that we were highly in-demand experts. I also learned that the software we specialized in was completely oversold relative to the customer's needs, and shipped with huge swathes of functionality missing or broken. These missing or broken features were responsible for generating a ton of revenue for not only our consultancy, but at least two other, much larger firms. One would almost think it was a deliberate design decision.

The post mentions imposter syndrome, I would be curious to hear more about how this experience affected that for the author. Oddly enough, my own experience with a shady consultancy had a huge personal benefit in overcoming my own feelings of imposter syndrome. I am a good communicator and realized that I could quickly learn the jargon and social conventions of this workplace. After a couple weeks on the job I was actually productive and built out some major chunks of custom functionality. I learned quickly and the work was not really that technically challenging. If anything, it showed me that you could survive in large organizations like our client company by being an effective communicator and that most of the people employed there weren't intimidating wizards. I actually really enjoyed working with many of our client's staff and wish I could have done so under better circumstances.

I left after a little over a year. The amount of pay wasn't too bad but there were several unannounced late paychecks that spooked me. Also, even though my skills were up to the task and I worked well with my teams, the feeling of constantly looking over one's shoulder and having to keep up the management's lies really took a mental toll. At first it was exhilarating, but eventually I came to the same conclusion that the OP did where I felt I could not build a career on this foundation. I completely changed industries to shake up the depression that settled on me. Shortly afterwards, I learned my boss was engaging in some sort of tax scheme that caught up with him, resulting in him dissolving the company then fleeing the US for a time.

Ultimately working for this company taught me a lot of soft skills and not a lot of transferable technical skills. My opinion is that the burnout I felt, leading me to change careers, probably had a detrimental effect on my long-term career prospects. I later realized I actually enjoyed and excelled at software dev and could have been much further along that path by now if my first experience wasn't so bad. Overall I have very mixed feelings about the experience but it was formative for younger me learning how the world works.