Been at this company for 4 months as a data engineer. When I started their codebase was a mess. All the code was in one folder with subfolders, the scripts were dependent on one another even if they didn't share the domain problem, their version control was "call the IT guy to grab the backup". In the first few months I set up a Github organization for them, put all their code into a git repo to start version control, got them to install and use IDEs instead of just VS Code, refactored some of the codebase to use SOLID standards, automated some tasks, transitioned them to a new Snowflake warehouse, and fixed several issues that was breaking their workflow. Today the CEO told me that this is an at-will state and he let me go. Didn't explain why, just asked for the equipment back.
I didn't get any write-ups, no one complained about my work, I was always looking for improvements, even the CEO thanked me a couple months ago for writing a word document to my managers on how I think the team can make improvements. They actually followed that doc and have been happy with it. This came from nowhere because no one brought any complaints. Today I am lost. I just need to vent and let this out.
I did just create an automation project that would scrape/download, clean, and load data from one of their vendor's websites. I was asked yesterday to write documentation on it so others can use it which would have been done today but...
I was also the developer for a project that reduced their accounting team's work from 1 month to 1 minute. The project would read accounting reports, download data from a snowflake warehouse, match billing items across multiple reports, and provide a summary to the accounting team. They asked be to help them because it took a month for them to go through each report. I was just finishing the project this week...
I'm a data engineer like you, I create automation scripts to parse and export data to DB. But one thing is for sure, I've never made my scripts easy for others to learn. Keep the code a bit messy but it still works perfectly, so they have no a good reason to fire me.
That's a lot of changes in four months, is it possible that you made people uncomfortable with the pace of change? Were the other workers able to effectively use the changes you implemented?
I was thinking similar. How much of this was communicated, vs just done without asking. Were there considerations like "does company want their code on GitHub?"
I presented a report after my first two weeks on the changes I recommend. They discussed this with the team, the IT guy, and the CEO. The CEO thanked me for caring enough about the organization to put this into writing. I didn't get everything I suggested but we got the important things. My plan was to get the team used to the tools I suggested before going on to other tools. All of their code wasn't on Github because they had secrets hard coded in there so I only put new projects I created on there. I taught them the importance of environment files to keep passwords from git history. I only wanted to improve the place where I worked.
I've worked places where fixing what's broken was actively frowned upon. Short sighted employees will confuse "why do I have to learn X" with "I'm making more work for everyone" instead of realizing "doing X will take 10 hours to learn, but save one hour a week forever".
These are not places you want to work. You're lucky to be free of them if this is the situation you were facing.
I don't believe you did anything wrong. It was a chicken shit move on the company's part. Right now it is a tough time to be in technology as there have been a lot of layoffs. I would just get my resume polished up and put yourself out there again. Sorry this happened to you!
It really depends on who uses it, some people have it setup with enough plugins and changes to be a full-blown IDE for their programming language of choice while some just do very heavy text editing
Maybe someone has a reason to make a mess of it. When everything is clean, it's easy to spot the mess.
By doing what you did, you may very well have outed something that shouldn't ever have been seen or stepped on someone's toes.
If you do the right things and it doesn't pay off then the company is probably not a good fit for you, if you ask me. A company that fires you with no warning out of the blue is very likely a shit company.
I think anyone who is more interested in bettering how they do development would look at your achievements and want to hire you on the spot.
We have lots of people who think like you where I work (me included) which is why I am still there after so long. It's utopia compared to the clown show companies I worked for before.
Contact an employment lawyer. Yes in at-will states they can fire you, but for any legal reason. If they just fired you for "no reason" then something fishy is going on for sure.
Any employer anywhere can fire you for a legal reason. Employers in at-will states can fire employees for no reason. In fact, that is the main practical distinction of at-will states in this regard, it's what "at will" means.
Even in an at-will state, an employer can still not fire you for an explicitly illegal reason, but unless they are stupid enough to tell you (it happens), good luck proving that it was for an illegal reason.
@OP, sure contact an employment lawyer, but ask if they provide a first consultation for free. I would not actually pay for a lawyer if I were you unless I were much more certain that there is a chance of success.
I won't be contacting an attorney because I don't think I have a case. They would not give a reason why I was let go, only that we have to go our separate ways and the people I can contact within the organization cannot get answers from them.
You have it backwards. They can’t fire you for an illegal reason. These are known as protected classes. But they can fire you for any reason that’s not protected. And “no reason” isn’t protected, so it’s legal.
For the curious, the protected classes are: Race, color, religion or creed, national origin or ancestry, sex (including gender identity, pregnancy, and sexual orientation), age, or disability.
So you can’t fire someone for being black, but you can fire them because you don’t like the way they smell, because you don’t like their personality, because their favorite color is purple, or just because you feel like it. As long as you don’t say you’re firing them for one of those illegal reasons, it’ll be very hard for them to sue.
And employers know this, so they almost always list it as “no reason” to avoid any potential lawsuits from words getting twisted against them. For instance, maybe you fire someone because you don’t like the way they smell, but then they try and twist that into “you fired me because I smell like curry, and therefore you fired me for my race.” So to avoid anything potentially being used against them, they’ll simply list it as “no cause.” Unless the firing was for cause, (which basically means you fucked up while working there,) and they want to avoid paying your unemployment insurance. In those cases, they’ll build a case against you, then fire you once they have a binder full of real/imagined company policy violations to throw at you.
The only way OP would be able to sue is if they’re able to prove a pattern of behavior against a protected class from the employer. For instance, maybe a new manager gets hired, then every single black person gets fired within the next few weeks. If those workers come together, they can show a pattern of behavior that the manager is racist and fired them for being black, even though the manager didn’t explicitly state that the firing was due to racism. But that’s hard to prove and requires a lot of documentation on the employees’ part.
I’m guessing this was always their plan. They knew that what they actually needed was a competent temp worker to clean up the previous employees mess. To make the gig more attractive, though, they advertised it as a permanent, full-time position. It sucks, and you’re right to be angry. I hope something breaks, causes an expensive problem, and they wish they still had you around.
In the long run, though, if they kept you on, they only would have found another way to screw you. Hopefully, your next employer won’t play these games.
Thank you all for your replies. I will try to interact with you all but I'm a bit devastated right now. I just feel so blindsided knowing I was the only one from my team fired while trying to figure out why. There were only 4 of us on this team and I did what I could to make the work easier for all of us because I did like working there and with the team. I'm just sitting here going through the last few months wondering where I messed up. I've always asked for permission before I made a major change and explained my reasoning, I only worked with approval. There were some issues they wanted me to resolve but I couldn't do them immediately because their codebase was so coupled. Anything I fixed in one area broke another script so I had to decouple everything and it was a lot. My manager would routinely seek my assistance when something broke. I didn't write that code but I debugged and solved it in front of her while teaching her my thought process and how to use the IDE's debugging tools. I need a day to process.
Before I had this job I had been looking for a couple years. Applying, interviewing, getting ghosted, and wasting time and money. I really don't want to go back to that life again. Did they run a background check on me? This has happened before and the BC company mixed my records with my father who shares the same name. I'm supposed to be able to contest that. Its just speculation now. At least they're giving me a severance and won't contest unemployment. Again, thank you for the kind words.
OP you're a good person. You've given your best effort, yet you don't realize that they hired you only to fix their mess. You learn the hard way how you should never trust and 100% loyal to your employer.
They just set you up perfectly for your next gig. You turned the place around, somebody thought your job was done and termed you, not knowing that work like this is never "DONE" done.
Hope you kept the doc of the suggestions you presented, and the changes you were able to effect. Best now to just move on. Someone else will love what you did.
Not cool. But certainly doesn't sound like there was anything you did to cause it. Also sounds like you'll do just fine in any environment that lacks structure and resource (which as far as I can tell is all of them).
Cold comfort I'm sure. I would want to know why, but would expect them to be not forthcoming on the reason (I don't have much faith in any business that fires people without providing a reason). One option might be to request a written reference. If they agree the content might reveal at least what they wish the publicly stated reason to be.
Good luck getting shit back on track, and in particular good luck keeping your head in the game during this unfair and challenging time.
This is unfortunately how it works now. You can be fired or let go at any time and loyalty is dead. So don't give employers your loyalty either. Don't put in too much time at work and don't get emotionally invested either. It's fine to do with that will make your life easier so you can eventually put in less hours, but you could make the company billions of dollars or save billions of hours and they will cut you just the same as if you were shit at your job with no respect.
One of their biggest customers was supposed to renew their contract and have been dragging their feet. It is very possible it was a budget issue. My manager has been saying that once the contract is renewed they would hire more engineers to assist but I have no idea about any details on the contract. I hope I was let go because the contract didn't work out as expected and I was to expensive and not because I fucked up or didn't meet expectations because no one complained about my work.
Your actions, while correct and positive, shone a light on the incompetence of the wrong person(s), and someone(s) got in the CEO's ear to make that stop.
got them to install and use IDEs instead of just VS Code
This is the only thing that bothered me. I'm a developer of 25+ years and if someone was forcing me to use a particular IDE I would leave at lunch time and not come back.
An IDE is little more than a glorified text editor. Who cares how a dev prefers to edit a text file, as long as the text file gets edited?
I'm a vim user and if you told me to use a different IDE, you would be halving my productivity, destroying my morale and ultimately costing the company a lot of money.
It might be that someone was embarrassed by the stuff you pointed out. I had a job where I had a boss who created a hostile work environment and was emotionally abusive. All the management staff I asked for help only offered to help me make a resume for a new job. My boss was far more important than I was, and I was easier to get rid of, so they essentially forced me to quit.
Unfortunate reality these days. An employer can be sued for firing people for the wrong reasons, so if they don't have to, they won't tell you any reasons, and if they do have to, they will make up bullshit ones.