Discussion on: Describe the worst coding culture you've been a part of

cucumbur profile image
Rick Sheahan

My second job was at Microsoft. Well, so I thought at first - it was actually contracted through an agency that changed names every two months to avoid the plague of 1-star glassdoor reviews that followed them around, and seemed to be more or less solely a Microsoft contractor pipeline funnel built to take advantage of naive developers. As you can imagine, this already shows how the coding culture would end up for me.

I was given ownership (ha) of a project that was internal but publicly known, with plans to go OSS or at least publically available. It was the worst mess of code I have ever seen in my life... I would rather have refactored the source code to Dwarf Fortress. Outdated, overlapping tooling (lol bower), Angular1, no style guides or linting or Git guidelines (blame basically just told me "oh, here's where this person put in the part that fucked the code up, not actually give me any idea as to why they did it".

The codebase I inherited had contradictory documentation spread out confusingly in Microsoft Notebooks or whatever they call that nightmare, complete with tons of pages I had to wait days to get authorized for just to see something about PUBLIC API DETAILS, which would be a recurring theme. Repeatedly, I could not access the tools, resources, or info I needed to just code the fucking thing. Although I did my best and I think I did a damn good job before I was terminated after realizing what they were doing with me and half the other workers with the contractor label.

50% of the code was dead, like a personal project that you've just messed all up in order to refactor it. But without the refactoring. Simple client side booleans that the server sent back during API calls were removed randomly throughout the work of the FOUR previous designers on this small, <2 yr old, single full-stack app. Of course, you can imagine that there was absolutely no cohesion in the code anywhere, as if someone played the "three-headed monster/story" game except with a full stack web app.

As it was MS, Azure was hamfistedly forced into the app (and the reverse is true as well). I couldn't access any Azure learning resources because I wasn't an employee! Beautiful. (I worked 40 hr weeks in an office and reported to ms employees as team members and bosses, building an internal app using Microsoft tools and a mandated adherence to a loose 9-5 schedule. But I wasn't an employee, of course. I was a contractor). This led to so many issues, but I'm rambling so I'll get to the most infuriating part of the entire thing...

A previous disposable dev had set up a guide on how to run the stack locally - shouldn't be hard, it's just MH*N right? Hahahaahahh if only. All the secrets weren't uploaded on the GitHub or in the notes or ANYWHERE I could find. I spent literal days searching because I couldn't work at a clip without being able to RUN THINGS LOCALLY, and of course, it's not a great practice to deploy to the staging server every time I wanna test a small commit. But the secrets/secrets file(s) were absolutely necessary to do fast paced work. After talking to some of the few helpful people I encountered at the company, who were experts in navigating the Kafkaesque bureaucratic hell that spanned both the office and the code bases. I spent about 3 weeks trying to get this while having to make a PR, wait for it to get merged, and test it every time I wanted to make so much as a font change. I wasn't going to be able to keep up the exhausting process if I didnt get the secrets file soon, enabling me to run the stack locally.

One day 2ish months into the job, I finally found the secrets file, and many other, through some leads from the helpful outliers and my extreme investigations that made me feel like a computer forensics expert. One of the helpfuls told me I had also found a major company privacy/security vulnerability, as I found more than just MY small-beans file, I had uncovered a huge cache of secrets files that countless engineers had stored in the wrong place - probably "contractors" with as much guidance as me, not trained on Azure or allowed to access learning materials, which might've given them knowledge on where to put the key. It was a major success and I felt great.

I got a call from my "recruiter" at 7pm that night: I was My contract was terminated by a higher level employee (not on my team. they were VERY screwed losing me) because of "something I said on an internal forum". My Post? In the internal Azure help and support and training forum, I asked where I can get some training that isn't locked out to contractors, and I non-aggressively expressed frustration with not being able to access the Azure learning portal because of the "v-" before my email address.


ben profile image