26
Owenvii
2y

I think I want to quit my first applicantion developer job 6 months in because of just how bad the code and deployment and.. Just everything, is.

I'm a C#/.net developer. Currently I'm working on some asp.net and sql stuff for this company.

We have no code standards. Our project manager is somewhere between useless and determinental. Our clients are unreasonable (its the government, so im a bit stifled on what I can say.) and expect absurd things from us. We have 0 automated tests and before I arrived all our infrastructure wasn't correct to our documentation... And we barely had any documentation to begin with.

The code is another horror story. It's out sourced C# asp.net, js and SQL code.. And to very bad programmers in India, no offense to the good ones, I know you exist. Its all spagheti. And half of it isn't spelled correctly.

We have a single, massive constant class that probably has over 2000 constants, I don't care to count. Our SQL projects are a mess with tons of quick fix scripts to run pre and post publishing. Our folder structure makes no sense (We have root/js and root/js1 to make you cringe.) our javascript is majoritly on the asp.net pages themselves inline, so we don't even have minification most of the time.

It's... God awful. The result of a billion and one quick fixes that nobody documented. The configuration alone has to have the same value put multiple times. And now our senior developer is getting the outsourced department to work on moving every SINGLE NORMAL STRING INTO THE DATABASE. That's right. Rather then putting them into some local resource file or anything sane, our website will now be drawing every single standard string from the database. Our SENIOR DEVELOPER thinks this is a good idea. I don't need to go into detail about how slow this is. Want to do it on boot? Fine. But they do it every time the page loads. It's absurd.

Our sql database design is an absolute atrocity. You have to join several tables together just to get anything done. Half of our SP's are failing all the time because nobody really understands the design. Its gloriously awful its like.. The epitome of failed database designs.

But rather then taking a step back and dealing with all the issues, we keep adding new features and other ones get left in the dust. Hell, we don't even have complete browser support yet. There were things on the website that were still running SILVERLIGHT. In 2019. I don't even know how to feel about it.

I brought up our insane technical debt to our PM who told me that we don't have time to worry about things like technical debt. They also wouldn't spend the time to teach me anything, saying they would rather outsource everything then take the time to teach me. So i did. I learned a huge chunk of it myself.

But calling this a developer job was a sick, twisted joke. All our lives revolve around bugnet. Our work is our BN's. So every issue the client emails about becomes BN's. I haven't developed anything. All I've done is clean up others mess.

Except for the one time they did have me develop something. And I did it right and took my time. And then they told me it took too long, forced me to release before it was ready, even though I had never worked on what I was doing before. And it worked. I did it.

They then told me it likely wouldn't even be used anyway. I wasn't very happy at all.

I then discovered quickly the horrors of wanting to make changes on production. In order to make changes to it, we have to... Get this

Write a huge document explaining why. Not to our management. To the customer. The customer wants us to 'request' to fix our application.

I feel like I am literally against a wall. A huge massive wall. I can't get constent from my PM to fix the shitty code they have as a result of outsourcing. I can't make changes without the customer asking why I would work on something that doesn't add something new for them. And I can't ask for any sort of help, and half of the people I have to ask help from don't even speak english very well so it makes it double hard to understand anything.

But what can I do? If I leave my job it leaves a lasting stain on my record that I am unsure if I can shake off.

... Well, thats my tl;dr rant. Im a junior, so maybe idk what the hell im talking about.

Comments
  • 10
    Get out of there, it's best for your own sanity

    I CAN NOT describe the feeling I had while reading this post

    You're a complete stranger to me but I'd hug you and tell you that you don't deserve this, no aspiring developer deserves this
  • 3
    @alexbrooklyn thank you for the support. It's not been a great experience, but there wasn't much option from where I was from. I thought myself lucky to get it at all.

    I would quit, but im worried about what effect that would have on future job prospects for myself. Thats the main thing holding me back.
  • 3
    Ah, continuing where I left off.

    I think the gem is our PM. Our PM has scrum meetings with us. These meetings happen every day. They last anywhere from 6-15 minutes. Thats fine. Im ok with repetitive short over voice meetings.

    The problem is how they go down. PM says our name and expects that we give them updates on everything we are doing. I'm pretty sure that isn't how this is meant to happen. She doesn't ask any questions untill we have provided her our own status report. So we have to know what we're going to say before hand to her.

    Also, during discussions with her, she has often disliked what I said to her about something technical. And when she does, its usually followed by her giving me an order to talk to someone and figure it out, and then proceed to set herself on our IM to DnD and ignore me. I don't need to say this goes against a PM's job... But.

    :/
  • 1
    I don't even know what to say except holy shit.
    Wow.
  • 2
    The fuck are they having you guys do if they’re outsourcing fucking every line? (No offense to you, all offense to the company)
  • 1
    @Bubbles apparently they need an in-house developer because they realized they couldn't talk to the outsourced team at any convenient times. So im.. Like the only developer minus the senior developer whose usually too busy managing the off shore team to help me.

    When I tried to explain the bad situation the code was in and how I don't want to keep doing quick bandage solutions, the PM told me that the way she saw it, she had a team she had to give issues too, but she would only get "Lectures and Long-Term solutions" instead of short term ones.

    As if the short term solution is the golden key here. But she isn't a programmer and doesn't see the code. I could go on and on about the specifics...
  • 1
    Code problems:

    No ternaries. Fine, whatever. Im not in love with them. Just makes thing less headachy.

    All string concatenation, no string interpolation. Im way more iffy on that.

    Hardcoded dom elements in strings. That made me gag. We have Jquery - in fact we have 6 difference versions because people don want to update old features. Why do it like this, ever?

    Nobody reads warnings. Nobody. Its not just pointless fluff... So we now have over 6000 warnings in our solution (!!!). Out of control utterly. Unused this that unresolved sql references this that

    Having IE support as a priority. The confinements really hurt. Dear god.

    Having huge god objects. Helper comes to mind.

    Constants.cs has so many members that if you try to use vscode it will not load the members for like 3 minutes. Thats not cool.
  • 2
    No standards on naming conventions. Sometimes its got an upper case. Sometimes it doesn't. Maybe it starts with an underscore. Sometimes, they slap an a to the end of it just to make it a unique constant name.

    This goes for our.. Tons of session veriables we have too. Nothing is standard. And we have never once sat down and figured out what the hell actually goes into session data. I swear theres redundancies.

    Unused shit everywhere. The svn solution has a ton of deleted/missing files that were never removed from the solution properly. Its very unclear what configuration is actually used.

    Half of the configuration is stored in the db. But its not in one place - meet sys_configuration, sys_config and of course sys_cust_x_config

    You wouldn't know but sys_configuration actually is configuration keys. And then the configuration is defined per customer on the system by the x table. Fine. But sys_config is actually just... More configuration but different. What the hell
  • 2
    Oh and the worst part of it all? Old hardware. 5 year old asus laptop. I think its asus k550ln? Its awful. I was murdering the poor thing with visual studio alone.

    So I dug up a really old desktop they weren't even using. But it at least runs better. It still can't handle vs if it has any large extensions. Anything like resharper or its alternatives to help me with the clossal amount of refactoring to do is a no go.

    I asked for a new computer. They told me it was fine and the other developers actually had worse. I felt awful. We don't even take our machines home with us, why laptops?

    They said they couldn't just buy me a new system. I was beyond confused. They could afford to pay me, but not the much smaller amount to give me workable tools? I even offered to pitch in with some of my own money and they still said no. Too much work for the system admins.

    Quitting seems like a good choice.
  • 1
    Not actual table names fyi.. But very similar. Wanted to include close to similar names to point out the sql naming shenigians..
  • 1
    You, my friend, are in for a very bumpy ride
  • 1
    Will quitting seriously hurt my employment chances? Or is it explainable and won't make me less hireable?
  • 3
    Dude, quit

    When they ask you why in interview, explain the situation
  • 0
    I'm gonna go with a large corporation. Get out as a junior. Find a smallish company (<15 people in IT).

    When you look for a new job, talk with the senior you will be working with and see if you can learn from them. If the company can't pin someone down, see how open they are with you asking questions on the job.
  • 0
    @Owenvii or get a new job before you quit?
    How hard it is to endure?

    My first job was also quite shit, but I stayed longer than I should have (3,5 years) - giving me stress/depression flashbacks from time to time. Should've send out me applications sooner.
  • 0
    Start searching for another job at a company with lots of seniors you can learn from and don't badmouth your current employer in interviews. Your current company probably doesn't want to build a sustainable product, just deliver something and then grab the money and run. That's why they don't care about quality. They needed someone more experienced but hired you because you were cheap and they are trying to squeeze senior work out of you.
Add Comment