It is a job. There are no pros.
It takes at least 2 full weeks to set up proper admin rights on your laptop. You'll have to submit helpdesk tickets, resubmit them, escalate them, and re-escalate them because someone in IT gave you read-only privileges when your ticket specifically asked for read & write privileges. Employees and contractors know this has been a problem for years, and nothing changes.
Company policy refuses anyone to use a Mac, despite this being the preferred development environment for most JavaScript developers. When you ask them why, the answer is essentially: “because I said so”.
Company policy refuses to allocate any time or funding for testing, even on heavily funded projects. All of the products are riddled with bugs that no one knows how to fix. No unit, feature, or end-to-end testing allowed, unless you want to put in unpaid time for it, which you will not have due to the next item.
Poorly defined feature specs and requirements. Consistent scope creep. Requirements change days before the deadline, but the deadline will not change. You have a statement of work with clearly defined deadlines, but you never get to see it or use it to defend yourself, so it may as well not exist.
Pointing out bad practices, anti-patterns, poorly performing code, or questionable product behavior will put a bullseye on the back of your head. Constructive criticism is always taken personally and negatively, no matter how politely or tactfully it is given. Employees will harbor a grudge over a minor critique and pretend like everything is fine. Then they go behind your back and grossly exaggerate what was said to have you removed from the team.
Shady office politics. If two employees decide you are “making them work,” they will conspire against you. They'll set up surprise meetings designed to make you look bad and record it. They will silently break the codebase with an unannounced change the day before your deadline so that you cannot meet your deadline.
Bigoted company culture. One employee in particular, who I will not name, is extremely offensive. They've dropped the hard-r n-word in private conversations. They made gross remarks about women, homosexuals, and transgender people. Management knows this and does nothing about it. Another employee puts vulgar and obscene language in code comments simply because they think it’s funny.
Retaliation for use of sick time. I was out in the ER for 2 consecutive days. I had 5 sick days saved up. Both days, I messaged the team before the workday started, informing them that I was severely ill and in the ER. The second day, I was still getting messages from coworkers on my phone and answering them with an IV in my arm. On the 3rd day, I was finally discharged and signed in for the workday. Everyone welcomed me back, or so it seemed. At the end of the day, I was terminated with no warning. I had never once been talked to about my performance or personality leading up to this. When I asked why I was being terminated, and to be given a chance to defend myself, I received no reply. My laptop access was then shut off within minutes. I still had 2 weeks left on my contract, and I was supposed to get a Christmas bonus and a contract renewal, which were both rescinded.
Embrace change or retire.
Just awful and absolutely zero information given. The interviewer had no interest in actually conducting the interview, which I found highly insulting. Needless to say, I didn't get the job, nor did I want it.
Phone and then in-person interview. Easy process, but no follow-up from Human Resources. They were nice people, but they leave you hanging for a response. No feedback whatsoever.
The recruiter called me directly for a face-to-face interview. There were four interviews with people of different levels, including directors and senior software engineers. The interviewers were very nice. They asked relevant questions.
Just awful and absolutely zero information given. The interviewer had no interest in actually conducting the interview, which I found highly insulting. Needless to say, I didn't get the job, nor did I want it.
Phone and then in-person interview. Easy process, but no follow-up from Human Resources. They were nice people, but they leave you hanging for a response. No feedback whatsoever.
The recruiter called me directly for a face-to-face interview. There were four interviews with people of different levels, including directors and senior software engineers. The interviewers were very nice. They asked relevant questions.