The meeting was about an app that integrates credit card payments, billets and bank account on a terminal that is going to be available to the general public.
The deadline? 11PM of the same day. Final version. From 0 to 100% in 6 hours.
I said that it was impossible. He said that I was incapable.
Saturday morning I had a burnout. I was afraid to lose my job because I sustain my family. I thought throwing myself from my apartment window. That was one of the worst days in my life.
I got fired on Monday morning.
Got another job on the same day. Almost twice the salary.I told them that I need a little time to cleanup my mind and they gave 2 weeks to recover from that situation.
I'm happy now.
When someone tells you to do something that's both impossible and utterly unreasonable, just stick to telling them it's impossible.
If he tells you you're incapable, tell him he needs to use a realistic planning for these things, and if he can't do that, then he's incapable.
There's no angle from which this is even remotely acceptable. Even more so because it involves financial transactions: writing anything related to that in such a hurry is a recipe for disaster.
This manager needs to be fired hard, or he's going to bring that company down.
The need for overtime work should be communicated in advance, or there should be an explicit, voluntary, paid on-call rotation for things that occasionally need immediate attention, and on-call should be limited to things that break and need fixing, not things that need to be built.
All relationships need healthy boundaries, in this case, their relationship with work, and work's relationship with them, is unhealthy. If online research about healthy boundaries isn't enough, I recommend seeking a professional's advice (like a licensed therapist or psychologist).
Rights have been stripped from individuals and workers. We need a massive redressing of the “corporate” world. Workers rights matter. We’ve got companies that are too big to fail being bailed out by the government meanwhile companies can schedule you for just under the minimum requiring benefits but still take up as much or more of a commitment as a full time position.
Of course I took this as a sign to gtfo of the company, so I started applying, left for a massive promotion and 40% raise, and now I work remotely at a company where we only have standup once every couple days and it's not first thing in the morning. Nobody's micromanaging my work schedule or nagging me for not clocking in at a certain time, and I'm making way more money especially since I don't have to live in SF/NYC anymore and pay nearly half my compensation in taxes and cut a third of my paycheck to a landlord. Funny thing is that I'm actually more responsive/available now because I value my job more, enough to enable Slack notifications on my phone and respond asap (within reason). Couldn't be happier.
I think I was asked, at every interview I've been to in the last few year, how I handle receiving difficult feedback. This is the only place I've ever interviewed at where I was asked how I handle giving difficult feedback.
Both Communism and Agile are at odds with reality (current productive forces and human nature) so they tend to devolve into tyranny.
But in the rare times that I have, it’s mostly because the team tends to get pulled in a lot of directions, and the standup is a reminder to focus.
There is usually a larger organizational issue that leads to a team pulled in so many directions. But that’s a lot harder to fix.
lot easier to become restless standing around than sitting down.
So, you were consistently late for work, didn't pay attention in meetings and were admittedly inattentive and working from home "too much". So you were put on PIP and you took that as a reason to leave the company?
What did you expect them to do? You sound like a nightmare employee. I'm sure the company is equally glad you're gone.
My manager was obsessive about when I showed up at work- despite never missing a meeting. If I got in at 7:30 one morning and 9 the next, it drove him crazy, regardless if I was putting over 9 hours a day every day.
He valued predictability over production because he was an obsessive control freak not because it made anything better from the point of view of the company or my actual output.
I may have been a nightmare for him, but I don't think I was the problem- a manager should manage for productivity/outcomes not for his pet peeves. My current manager (at another company) understands how to maximize output and is comfortable as long as work gets done and everyone is much less stressed.
I wish there was an easier way to learn about this culture as part of the job search. I like to have candidates shadow for a day or two to meet the team and see how days go.
People who are into being on time have it as part of a larger philosophy, I think. Being late for them means something specific. I don’t know if I’ve ever seen anyone change modes on this but it’s probably easier to change their philosophy than be late to a bunch of their meetings.
I hate it when a company says it's "results oriented", but turns out to be mostly "butts in seats" that demands results, too.
I my personal experience the guy who turned up at 8am and started getting shit done, always was far more productive (and indeed ended up a much better coder very quickly) than the “judge me by results not hours” guy turning up at 9:45. Even despite the latter guy being smart and more experienced.
Notice I said "didn't appear attentive in meetings". Yes, I was not very enthusiastic about our 15-20 minute morning daily standups where every employee goes around justifying their own existence and reitering what is already on the Jira board.
Yes I was working from home "too much" in a job where I was working from home 1-2 times/week, and for the first 6 months it was never an issue, but then when a new manager took over (with no involvement in our team's day-to-day activities) all of a sudden he had an issue with it. Not because my/our output was any lower than before, just because some marketing executive noticed that my team was working from home more than the others (made more apparent by an open office), and assumed this meant we were probably slacking.
You sound like one of those nightmare "managers" I worked with who destroyed the company's culture and caused the company's enormously high attrition rate with most employee's only averaging ~1 year before quitting for greener pastures. I'm glad I no longer work at companies with corporate drones like you.
I've heard of people coming back from it, but it's rare. And I think it would need to be the trigger for some kind of personal epiphany that completely changed behaviour for that kind of effect.
Boss acknowledged I completed the PIP and then fired me for my "bad attitude during the process."
Well, he wasn't wrong about the attitude, I suppose.
At my current employer, I've personally seen (and mentored!) people on a PIP who've been given reasonably concrete feedback on how to improve their performance in terms of the parameters set by the organisation. (The last part is key!).
People who've responded positively to this have seen reasonably good upward trajectory, and those who've responded negatively have been managed out.
> Once you got to that point, you're not a good fit to the team and/or they don't appreciate you.
Or you haven't yet figured out the parameters by which you're being evaluated. Once you figure this out, the next step is deciding whether you want to subscribe to those parameters or not, and acting accordingly.
I think the mentoring is also a really important part.
No pip, but I fixed those issues and wow - I worked less and org was happier
A funny story though from about 10 years ago (IE financial crisis): A sales person my wife worked with was put on a PIP. It had very clear revenue goals, modified his commission plan to be more performance based, but he could make more if he exceeded those goals, etc.
To everyone's astonishment, he started selling like crazy. There was only one problem- his boss forgot to "unfire" him with HR. Right after the PIP period expired, he gets a big deposit that isn't his commission check in his bank account- it was supposed to be a severance payment.
The guy immediately withdrew it from his bank account, and kept as little in there as possible so they couldn't get it back without confronting him, and later claimed he thought it was a commission and claimed to have spent it. They made him pay it back on a payment plan in the end, but only after forcing them to admit it was a severance and all that. He left as soon as he could find a better job.
I had just moved to United States with my wife and my 7-year old son. Since this was the second time I had moved from one country to another, I expected to be able to handle it reasonably well. Instead, I got seriously depressed by the absence of my friends and the cultural paradigm shift (i.e. the Seattle Freeze). I also had to deal with my family's emotional fallout -- both my wife and my kid got depressed and I was trying to help them as much as I could. On top of it all, I got an abscess and had to go to ER. As a result, my productivity dropped to zero.
The problem wasn't the productivity itself, but that I had mismanaged the situation. Instead of trying to talk these things over with my manager, I kept pushing myself, promising to deliver and failing to do so. It came to a point where my manager scheduled a 1-on-1 with me and told me he had no option but to put me on a PIP. He said he was extremely perplexed, because he had formed a completely different image of me during interviews and thought I would perform much better. During the 1-on-1, he kept prodding me to explain what was going on, until I broke down and explained the situation. He asked me why I hadn't told him any of that before. I explained that I had thought the American corporate culture was that you're expected to leave your baggage at the door and that nobody else should pick up your slack -- you're here to work, not to be babysat. He was appalled by the idea and explained that I should've talked to him and we could've organized things better. He reiterated that, because my lack of performance had percolated up the food chain, he had no option but to place me on a PIP; it wasn't merely up to him anymore. He explained that a PIP was a chance to prove that I really was capable of fitting my role and that if I met the PIP goals I would be in the clear, not just with his team and at that moment, but in the future too - managers aren't allowed to hold your PIP against you.
We then sat down and worked out a PIP. During the following 6 (or was it 8?) weeks, I met all the goals and that was that. After 2 years of working on that team, a much more exciting opportunity for internal transfer opened up, I applied for it and it worked out great. Nobody even mentioned my PIP.
In my opinion, that's how a PIP is supposed to work. For anyone interested, the company in question was Amazon. There are lots of things one might criticize about Amazon, but this is one thing they did absolutely right.
I was shocked at the end of your story that it was Amazon you were talking about, but I'm assuming this story happened at least a few years ago. I know of one friend who was put on a PIP around 2013 or 2014 - he is still with the company, has been trusted to be the technical lead for several large and important projects, and the only thing standing between him and a promotion to L6 is laziness in preparing the paperwork.
Amazon seems to have changed the process to what they call the "pivot program" - when previously you would have been put on a PIP (and given severance if you accepted it and failed it), you are now given the choice of
1) take severance
2) appeal (you will almost certainly lose, I don't have data for this but have heard about many of these appeals and exactly zero have gone in favor of the employee)
3) do the PIP, and if you fail it you are fired with no severance
Given that you are now offered severance as an alternative to a PIP and don't get a penny if you fail it, being put in the pivot program is unambiguously a pink slip. Sad to be reminded that Amazon used to be good at this, I don't think they are anymore
I was fortunate enough to be part of a couple startups when I was younger that went belly up. I've lived through the fear. I don't have any now. Happiness and work/life balance above all else, even pay; not some manager's unrealistic deadlines.
It may be harsh but fair to attribute to being infested with sociopaths or their culture.
Of course, a manager who's put on a plan is generally gone in a few months, or they're allowed to step down into an individual contributor role.
i do know people who have successfully completed PIPs and stayed. but every person who's taken the PIP as a signal to look for another position has done better in their careers and been happier than those who stayed. i get not everybody is in that position, but even if the PIP itself is reasonable, being PIP'd is not. it's a symptom of an underlying issue of poor management and should be interpreted as such.
That's a very broad statement but, whilst the sentiment is no doubt well-intentioned, it's also misguided.
Sometimes no matter how much feedback you give, how directly you express it, or how many ways you say the same thing in your weekly 1:1s it just doesn't get through. Occasionally people don't get it. Occasionally they don't want to hear it. Whatever the reason, you're not seeing the results you need, and whilst performance issues are often a result of some mitigating circumstance (divorce, bereavement, illness, and many others), sometimes they're not.
At that point a PIP may be entirely reasonable, whether it looks that way to the employee or not. This is especially the case if the employee's behaviour, performance, and/or attitude is having a detrimental effect on the rest of their team. Unfortunately, it often is.
Contrary to what you've said, a strong indicator of poor management is a failure to effectively manage performance, and to develop and maintain high performing teams.
Managers are held to account on their effectiveness in delivering against company goals. Effective managers sometimes have to work with an employee to correct performance issues. Sometimes the needed improvement doesn't occur. As cold-blooded as it sounds, this will probably lead to that employee being shown the door.
I'm not for a moment suggesting that every manager who uses PIPs is automatically right or some kind of enlightenened management genius. Like any tool, they can be used ineffectively or inappropriately. But if they're never used at all that's as big a red flag as if they're used too much.
none of the PIPs i've seen have been reasonable, but small sample size. i have also luckily never been on the receiving end, only observing from afar. hell, sometimes idiot managers have put their best, most helpful employees on a PIP because they're... spending a lot of time helping other members of their team! so their individual performance goes down, but the team performance goes up. but when you view people as "individual contributors", you don't see that.
i'll happily agree with you on "a strong indicator of poor management is a failure to effectively manage performance", and go one further, a stronger indicator of poor management is a failure to effectively evaluate performance. unfortunately, that is exactly what makes PIPs so tricky. ignoring who's perspective is most "correct", there's still a divide in either performance expectations or perception. the better strategy is still to leave, not see the PIP through. which makes PIPs a good signal for "you're about to be fired", but a bad signal for "we disagree on performance", simply because that difference in perspective exists. putting it on paper is again not necessarily helping the employee. if "it just doesn't get through", is a PIP going to change that? if they aren't performing, if "it just doesn't get through", why not fire them? a possible answer: passive aggressiveness ("work with an employee to correct performance issues") and leave a paper trail aka. ass-covering ("the needed improvement doesn't occur").
but look, i'm not a manager, and don't want to be. could i fire someone? probably not. so is a PIP more humane? i think so. at the end of the day, it sounds like we both agree what it's for, just that you didn't agree with my phrasing. fair enough, although i still maintain from an employee perspective, assuming poor management if you get PIP'd once is a good plan. if you start seeing a pattern, then it's time to look in the mirror.
I do think it's close-to-analagous to an altimatum in a relationship, though. Sure, there's probably been communication up to that point, but now it's decision time and it's time to get things sorted out or part ways. It's probably headed for parting ways regardless.
My country most developers are freelance contractors as we don't like to work as employees. During good times you can switch easy to good projects and more pay. Contracts are 3 months with extension so every 3 months you can re-negotiate. off course during down turns it can be more difficult to find work. Just build a nest egg for those periods.
But, more sadly, it just goes to show how desperate his audience is for someone they can look up to and who will, authoritatively, give them some kind of guidance.
He's part of the self-help-vlogger-industrial-complex. There's A LOT WORSE than him out there too.
I like him and I like how he's projecting the life of a regular developer from SV in his videos.
Practically he implied that we don't have to agree to any objectives that are imposed on us.
I would also add that if it is legal for you to do so - send a BCC to your personal email just in case, or keep offline copy of correspondence.
That said, it is likely CA has it's own set of protections that make it harder to do.
Usually, it's the company's internal policies that require a PIP and all the documentation even in an "at will" state. This is to maintain the appearance of fairness and to avoid the possibility of employment litigation (companies of course often operate in many states and federal law is always a concern). If you document, you avoid all this. The firing though is usually a _fait accompli_; the PIP is CYA.
You might want to contact an employment attorney in your state for a consultation. Your state Bar association can give you a referral and probably a free consultation. They will be particularly interested if this was the culmination of a pattern of bullying behavior (consequences vary by State) or if there’s some kind of protected class involved (eg you are over 40 and the manager wants a younger team).
It might seem like an unnecessary hassle, but legal action can help your remaining colleagues and possibly put some money in your pocket.
I feel unlucky never being fired and leaving 4 out of 5 cases because of bad management (poor task allocation, inadequate yet wasted resources, focus on appearances instead of essence both in steering and execution, poor communication or attitude, misuse of authority - including not using authority where necessary). I almost wish of having a (real, not induced!) feeling of incompetency, the feeling of the need to improve, instead of the feeling of wasting my time at work.
It's obviously impossible and the timing is awful, so it has to be voluntary and there's something behind it.
Did he need a reason to fire you? But that seems like a really bad reason that could backfire in a court.
You become “fire at will” not because the law says so, but because you are not in a union. On the other hand, most unions will still protect nonunion workers.
I’ve never really heard of programmer unions though. Would be curious.
If you can be fired at will, why even bother going through the whole thing in the first place, just fire him.
Indeed I never hide my ability to do so and I try to make very clear the things "I won't do" at any gig I take. Either before I start or very early in the process. At my current job it is "I won't program in a language without both types and IDE". Because of this I only work on the parts that are in TypeScript and the the JS, Ruby and Python parts are other people's problems.
I may seem like an asshole, but so far it works. Almost a year later I haven't been fired. And they seem happy about my work. And I am definitely not near burnout. Stark contrast with the older days.
I accepted an offer for a new job yesterday and so I won’t need that buffer but I’m keeping it, ISA’s and pensions are all good but I didn’t leave myself enough readily accessible cash to just say fuck it and walk if I needed to.
There is, of course a trade-off, which I'll illustrate with our situation. I'll only hire full stack developers, by which I mean people who are willing to turn their hand to anything in our systems, because it gives us more flexibility in terms of building teams, working across sytems, providing support, and so on. But we're a relatively small tech organisation with a lot of demands on us and so need that flexibility. People obviously have areas of specialty, but broadly they'll poke around in any system they need to.
I'm not saying you're wrong: not at all. Just that the trade-off is perhaps more limited options. That may not be a bad thing if they're not options you want though.
I do the same, it's amazing how well it works. As long as you genuinely try putting (what you think is) the company interest first, people actually appreciate you more if you don't do what you're told, but what you think is best. At least that's my experience so far. And it makes sense - because not everybody can afford to challenge the status quo & conventional wisdom, people that can do it can become very valuable.
A very experienced dep/ops in extrimis should be able to hack code even if there is no installed editor - I have recovered a stuck systems by editing config files with awk.
— Douglas Adams, H2G2
Across the street from her building is a ~10 story jail with an exercise yard on the very top. My aunt said she used to fantasize about how if she could throw her boss out the window, they'd put her in jail and at least she could go outside sometimes.
I miss jail tacos.
(Here is a picture of the basketball court on top of a 10+ story jail, very weird fixture of the Chicago loop: https://email@example.com,-... )
All the best
If anyone is feeling burnout for doing impossible or hero work, please remember your job is _not_ your life. You can escape the toxic situation.
Do not be some other man's squirrel.
That is not only impossible, it is reckless. A good way to lose not only money when things break, but get your access to credit cards and bank transactions eliminated when they learn their procedures were not covered.
What do you want by 11PM? A design?
Really, you want the whole thing completed?
Is this some kind of a joke?
(Depending on relationship) Walk out the door without saying a word, "I quit," or even better, just stand up and say, "Everyone who thinks this is absurd walk out the door with me right now."
Why: What I've learned is that employees ignoring an unreasonable boss sends a rapid signal to upper management to get rid of the unreasonable boss.
Even in "at will" employment states you can sue for unlawful termination.
I am, however, looking forward to the absolute crud an org like that will have to eat when they have managers like that. No org can last long with such levels of incompetence... Chapman's In Search of Stupidity is a chronicling of that.
If they are terminated "with cause," no benefits. I have never seen a PIP, but it may require you to sign away your rights as an "at will" employee.
Regarding twice the salary - seems like you got as much respect as pay. That's usually how it goes.... :(
Get an email the day before to deactivates someone’s access at X time. Next day they get called into a meeting 10 mins before X and then escorted to their desk and out a couple mins after.
What really sucks is when you have to do it for one of your teammates. :-(
I don't know the full details, I think she did have some kind of warning weeks before, but ignored it because she thought she was immune to being fired. She was the worst developer I've ever worked with so far though, personality-wise and skills, she definitely lied in her PHP interview. That's also on that company though, I have no idea how she passed that interview (okay, I do have an idea, no programmers ever spoke with her).
It's not only in the movies. I've seen it done in real life a number of times. In the US, anyway, this isn't prohibited by law.
Fuck incompetent management. It is a virus that eventually ravages the entire host (organization).
That is a horrendously bad suggestion.
He did his job, he moved on, whatever happens there should not be expected to be his problem anymore.
This is a situation where the interests of the workers aligns with the business's ability to succeed. Why not leverage that to try to improve working conditions there? Seems like a win-win for everyone but the toxic manager.
Did I mention that the DOS application is a HIPAA billing application that must meet all HIPAA guidelines as well as write EDI X12 billing files?
I'm very junior, been coding for ~5 years, 3 professionally, but this is my first real dumpster fire. We were about to hire a second developer, but turns out he had a record. Not for just anything, which we don't really worry about, but for embezzlement on the healthcare billing application he used to own. So, no. No can do.
So now poor 18-year-old me is knee-deep in a ton of shit I don't understand, working on non-version-controlled code, having been expressly forbidden from using ANY VC by the CEO, and trying to get details out of my older supervisor who built the code we're using, but he's near retirement and has so many vacation days saved up that he spends maybe 10 days a month in the office. I honestly can't blame him, but I either need resources to help me deal with legacy code, or a nice entry-level rails job, because I want to finish learning rails.
Well that's really fucking stupid of them. Maybe they're worried about evidence of old HIPAA breaches existing after the system gets updated, and doesn't want to explain that logic? On your local development station:
git init --bare
git clone repo project_folder
cp -r ../<path_to_project>/project project
This entire thread discussion is filled with it's not worth it, but towards the "no one should be forced to work like that" kind of way
The data and application code are probably very intertwined, rather than portable code that could be plugged into any kind of stage database.
I'm finding myself hoping that this is a fake, because I wouldn't wish this situation on anyone at all.
No version control, running on Win2000/XP, ancient beige box hardware (some with turbo buttons).
I was 19 and making $9 an hour. I got fired for automating my help desk tasks so I could bring us up to date.
Might be able to quit the job, turn them in for HIPPA violations and also claim unemployment (source: I did this at a job that was violating HIPPA)
If your boss says "Hey download all of the PHI for these celebrities to a flash drive and load it on your computer at home" you should definitely say no or get it in writing.
But if your boss says "hey I need a copy of George's medical records, e-mail them to me" as an individual you won't get in any personal liability for it.
1. HIPAA has a minimum necessary standard of disclosure, which means give only however much info you must give to accomplish the task in question.
2. You need at least three pieces of identifying info to positively ID an account, such as name, address and account number. (Other possibilities include: Social security number; date of birth; phone number.)
3. When disposing of papers or other media containing covered information, it must be destroyed, not merely thrown out. This means papers, floppy disks, etc must be shredded.
4. If you're printing a lot of papers with HIPAA covered info, you should have a locked trash can for any papers you are discarding. Presumably, this is merely a holding bin until it gets shredded.
5. Papers with pertinent info should be turned face down if anyone comes to your cubicle to talk, even a coworker. Ditto for papers coming off the printer containing covered info.
6. You need an annual HIPAA training program to remind everyone of a lot of the above (and likely other things I'm not covering).
7. Computers should be password protected when you walk away from your computer.
I guess the short version is: When in doubt, err on the side of making sure the information cannot be accessed by anyone who isn't using it to accomplish the purpose it is intended to serve. Also, you can't go flipping through covered info for funsies. Although you have authorized access, it's only authorized for a specific purpose.
When you say 'need' do you mean 'legally required to' ? I wonder if that could work to the advantage of the poster, in that if they left because they became aware that things are not being done correctly and they have never had any such training, the legal responsibility would reflect back on the employers who had not provided such training to an obviously inexperienced employee and the CEO in particular who is the person who should have known to do that.
I am not in the USA and I think the UK has slightly better employee protections and lines of legal responsibility, at least in some areas (such as Health & Safety) but who knows..
The reasoning behind not using VC was that it "caused more problems than it solved." His solution? Code directly on the production server. Yep. You heard me right. Let me say that one more time. Code directly on the production server. We eventually finally won a development server and wrote some bash scripts to deploy from there, but we never actually got SVN or anything. Imagine working on five person development team with no version control.
The guy was a serious joke. The VC issue is just one of many. A serious despot. The guy was hated by all. We laughed at him. Why would I stick that out for three years? I had zero experience when hired. All of us were very green. We were all just putting in our time to hit that magic three years experience checkbox we needed for the next level gig. The CTO was more concerned with appearing to have a large department and having developers working on lots of different things, than actual quality. We wrote some pretty terrible code back in those days and we did a lot of it on a production server during business hours.
We all left at or around the three-year mark. Month by month the "CTO" lost developers faster than he could replace them. The "CTO" was eventually fired and we laughed from afar.
You are being taken advantage of like I was when I first started. You are cheap labor. Your CEO doesn't care about the product. Your CEO likely doesn't care about your career development. The sooner you leave, the more you will learn and grow. That was my experience.
What a coincidence! We have a customer that is having a strange, hard-to-nail-down problem with our software. We asked if we could provide a diagnostic build to them that they could run in their test environment to gather additional information about what was happening.
Their reply was that they didn't have a test environment. They just install any software they get directly to their production machines.
But yeah, get the heck out of there.
Change management is part and parcel of anything in the medical software domain, and VC is an obvious part of that.
Version Control is a basic requirement of professional software development in this day and age.
You could try explaining to your CEO it would be like telling a carpenter they can't use a hammer to build your new house.
Or just take the initiative and use Version Control without telling them. In my mind it isn't something you need to ask permission for.
Not sure how that relates to Version Control? I personally don't put production (real) data on staging servers to begin with; always scrub your production clones or generate data for testing instances.
> If the data and application code are very intertwined (likely in a pre-SOA era), it can be very difficult to version control code completely isolated from PII.
Maybe I am naive (never had to work on DOS), but shouldn't the data be in a database/datastore/data directory that can be ignored by source control?
Easier than you'd think, or at least I could see it happening.
Yes, nail guns are awesome, but hammers are very useful tools.
Nail Guns are awesome. Pneumatic, butane/battery and powder actuated all have their place and were heavily used. Always had a hammer on my belt though.
In particular, it's hard to use a nail gun to fasten a plate, hanger or bracket.
Never sacrifice your own career for your employer's success (within some time horizon.) Being willing to quit when your boss is a clear bad actor is a core part of this.
It very probably is the opposite. A lot of people who end up working at 18 are doing it because they need the money and their support network is poor.
This is a time in your life when you're (hopefully) not supporting anyone else, don't have a ton of possessions, don't have a mortgage, can couch-surf, eat ramen, etc.
I accepted an offer yesterday, 35% pay bump, 5 extra holiday days, twice the bonus cap and all of that pales against knowing I’ll never have to touch that fucking codebase under unrealistic constraints again in a short time.
In stead I get to run a team, in a much bigger company with proper modern development practices.
When they rang to tell me it was mine if wanted it I was literally shaking, it felt like an elephant had stepped of my chest.
Until that point it really hadn’t occurred to me how unhappy the last two years at work have been, fighting the worst undocumented codebase I’ve seen two decades was a long slog, doing it alone for people who don’t understand the issues just made it worse.
Will be putting my notice in next week.
As someone 20 years older than you, get out and get out soon.
You are damaging your future career chances by stagnating in a job that won’t teach you how to do things better for your future.
I've been there. Run.
Of course, this same CEO also didn't see any problem with the fact that the password field in the login form was never checked against the database, because who would know someone else's login name?
Unless these are 'CEOs' of 3 people tech companies, I guess.
Gotta love those companies where there are more board members than employees.
Then again, this isn't a tech company.
- Hey Joe CEO, which version control do you think I should use?
- None, that's an order!
You don't have to go straight to the best job in the world. Just find something better (and do your homework to verify) and take it.
Yeah it's scary. But if the job is good enough, and the pay is good enough, then you've got to figure out why your bullshit reason for staying where you are outweighs both your mental health and your career prospects.
EDIT: And don't forget remote options.
Phenomenally small amounts of give-a-shit go a long way for youngsters. It's basically their superpower, if they're willing and able to use it.
A word of caution: One of my objectives as an interviewer is to drill into a candiate's resume to see if they actually did what they said they did. Its OK to talk up your accomplishments. But don't claim expertise in language X or technology Y unless you are prepared to answer some questions about it.
But this conversation has been about them saying they need to learn more before they can get a new job, and me replying that they shouldn't use that as an excuse to procrastinate. Thus the `need to pad my resume` comment.
You can run a local git repo, no code would ever leave your PC. I'd do taht, and damn the torpedoes. If he is dumb enough to say no versioning, he'll never know you run it locally.
I promise you, if they don't want to provide version control they aren't going to provide you with other benefits and necessities that you deserve.
Related questions to benefits and necessities:
* Are you getting healthcare?
* How is your pay compared to other Jr. software engineers in your area?
* Are they paying you hourly? If so, are they actually paying you for hours worked, or are they finding ways to reduce that number of hours?
* What if you demanded that they used version control, and brought your best arguments: what would they say?
Consider the answers to those questions, and if you don't like the answers, I strongly urge you to leave. There's a complacency that can come with "settling" for a place that is a "known constant." Don't settle here, when you deserve more.
Put what you've done on a resume, and give it to a headhunter. They will find you a better job - maybe not an ideal job, but a step up. And your career will truly begin.
You're a programmer, not a fall guy. You aren't getting paid enough for this.
1. I’m impressed that you’ve made it this far.
2. This situation has ‘get the fuck out’ written all over it. It’s time to dust off your resume and get out of there.
3. I don’t think you’ll have any trouble. You seem like a good writer and I bet you’d be a good developer to work with.
Best of luck bud. I wish I had a concrete way to help you.
There are plenty of jobs out there. Go get one, _today_, please!
Honestly the project sounds quite interesting, but I can imagine the circumstances make it painful.
* I don't understand it
* You're overcomplicating things
* We're not using any of that free shit here
* It doesn't say Microsoft or IBM
* The last guy we hired that tried to use it was smarter than I was so anyone else who tries is a threat to my leadership. (because everyone knows you can only manage people who have a strict subset of your own knowledge. If one of your peons dared learn something before you, that would be the end of your reign.)
the list goes on...
You've never looked at a piece of code that you wanted to see the history of?
You've never needed to revert a single change a few hours/days/weeks later?
You've never needed to track down the person who wrote a piece of code in order to ask them for clarification?
You've never needed to see the original change reason for a line of code that is doing some weird, specific thing that seems out of place?
You've never needed to have two people edit the same file at the same time?
The question was "Let's submit pull requests as a clean job not as a homework draft. Why don't we allow push force on work branches so that we can squash fixup commits after review?"
Blows my mind that those are senior developers that are otherwise seemingly competent at what they do. There is some pinch of job security there though.
The thing is that in a lot of scenarios people need to do huge chunks of work in feature branches. Sometimes a 3000 line "refactor the world" squashed commit is really unhelpful. The best policy is always well thought of weighted case-by-case decisions.
However, on projects with a lot of hands on the keyboard such policy is unrealistic and someone will do the opposite of what they should and wont ask or discuss. People, especially in our business, hide incompetence behind aloofness and silence.
So in that case, with a lot of people that are hard to manage, stiff policy is the best choice and there probably are reasons why people want to preserve history, no matter how hairy it looks, at least it's there and you can find stuff in it.
If you can't trust your employees to adhere to HIPAA or other mandatory regulations, you need better employees.
If your source code contains personal information, usernames, passwords, etc that should not be exposed to the public, you need to address that immediately regardless of any irrational stances on version control.
You need a better process. Developers aren't lawyers. Of course they should be aware of HIPAA requirements, but better is to ensure they simply don't have access to sensitive production data except in very controlled circumstances, while making safe anonymised test data available for anything they need test data for.
GitHub does, now, though I really hope that isn’t necessary for a company to adopt version control.
* It didn't exist at the time, but there was an on-prem that MS offered a few years back. It was forced on another department with no version control experience. It lasted about two weeks.
What else are you gonna use? SVN? shudder
I have no issue with a friendly wrapper in general, but after starting with the basic interface, I don't trust a wrapper to be logical, complete, and well thought out, given the foundation.
In the end it really boils down to a few commands that you use often, checkout/push/pull/commit/clone/branch/diff/status etc. It can definitely get confusing at times when you get merge conflicts and want to start playing with rebasing and stuff like that.
I've used it with teams with no experience with Git whatsoever and they're usually fluent at the basics within a week or so.
If you get stuck the command you need is usually a 2 minute Google away.
There's also this which is fantastically named! https://ohshitgit.com
Git follows in spirit the model of BitKeeper, a software that already worked exceptionally well for Linus and other kernel devs. So Git had both a known good design from the very beginning and a decently sized installed user base (kernel devs) with an important project (the kernel).
IMO there's nothing wrong with the cloning of software. You make it sound bad, can you give reasons?
I honestly enjoy the work when I know what's going on. We have a lot of unique problems to solve, and I have gotten positive changes made, as well as some really good weeks where I pounded out some good code, but other times it's slow, sad, and frustrating.
There's a skill to learn in keeping engineering concerns to yourself. It's unsurprising when management or executives are faced with decisions in unfamiliar topics they err on the side of Nay. Your mistake is involving them at all.
Using git locally is a tool just like your code editor. There's no need to ask your boss about that.
Since you're the only developer it's mainly to make it easy to revert any mistakes and to have confidence in deleting useless stuff (that you can recover later).
I echo your ??. Sure you don't need a central repository to use git. What does that have to do with suggesting some git hosts that aren't cloud based?
I'm very comfortable with git at the command line, but I still think it's valuable to have a web interface. For instance, with a web GUI I'm able to share a link to a specific line or range in a file in a specific commit.
Typically if I need to do that I'm asking a question or requesting a change, and in that case I want there to be as few barriers as possible to increase the chances that the other person cooperates. Asking someone to clone/pull the repo, checkout a hash, and then view a line in a file is a much higher barrier than asking them to click a link.
No good ones of course, but there is one that I think is superficially very compelling:
It keeps a permanent record of everything that has ever been part of the codebase. If HIPAA required medical and patient data to not be stored anywhere except under highly controlled circumstances, the CEO might be afraid that data might end up in version control.
And that's not an entirely unreasonable fear; developers writing a quick PoC could include data in the project because it's quicker than setting up the infrastructure required. And of course they'll later fix it, but the version control system will still keep a record of it.
Of course there are tons of bad practices about this, but here's the thing: bad practices do happen, even if it's just as a temporary measure, and version control will create a permanent record for that.
Of course the right way to do this is to ensure that the developers only have access to anonymised test data and not to real sensitive production data; and to ensure that production data is always and only stored under the proper, secure circumstances required.
It's still a red flag, but the reasons might be more subtle and complex than simply "I don't understand it".
Also, please pass this message from me to your CEO: He's an idiot for not letting you use version control.
Did the CEO give a reason? I'm a bit curious based on it being billing and HIPPA. Also, are you rolling your own EDI import/export?
Yes, I just wrote an EDI exporter in Ruby for Medicaid services, working on one for MCOs now. Thankfully we don't have to import EDI, or I'd go nuts.
Unless you have patient information hardcoded into the source code for god knows what reason...
Hosting git externally might be an issue though.
Just show him that you're literally only committing code, and not any real data in the repo.
I agree with everyone else commenting here. This is a disaster waiting to happen. You are also limiting yourself by not working with people who will mentor you and show you the correct way to do things.
You're experienced. You can find a new job. DO SO IMMEDIATELY. FIND A NEW JOB, NOW.
No version control = no way.
You're junior in years, but 3 years working professionally makes you perhaps less junior than you think. It's right around the point it becomes easier to get other jobs.
Just be able to justify your action and communicate your decisions clearly. You'll start earning respect and that alone will reduce your stress levels. Standing up for yourself is hard to do at any age and "learned helplessness" is a concern if you don't push yourself.
I read this and thought this could be because the CEO only thinks of version control as "GitHub", and is worried about putting sensitive information in the "cloud".
Have you considered discussing this with your immediate superior? Not using any VC is a disaster waiting to happen...