I was a contractor for years (i.e always living without insurance, paid well, hated by EVERYONE). I feel you here and I agree with all of your points relative to a contractor job. I mean it, I'm saying this twice because it's REALLY IMPORTANT that any of the bullet points you mention is a definite red flag for a contract job. I've bailed on $200/hr jobs for things lessor (not bragging, the clients were just that stupid -and maybe me too for leaving?).
With that said, no single item on your list is red flag for a specific (non-contract) job. I'd say that you can pick any 3 things from your list and, at that point, start looking elsewhere. If you are fortunate enough to be working in a company that is aware of these (any of these issues) there is hope.
In my experience, if there are any of the issues you mentioned in any company whereby a manager is not also a developer (i.e. smaller/midsize companies) then bail. They will eat you alive and they don't care for your well being.
However, if you are working for a company that humbly (i.e. smaller/midsize) acknowledges these issues and is "trying" to fix them, I'd say it might be worth it to help out, be a voice, etc. Make the company awesome!
This is my qualifying statement: I've worked for many companies big and small. As a contractor you have similar experience. To ANYONE reading this though, seriously follow your gut. If it feels like a 'bad deal' get the fuck out as soon as fucking possible.
[sorry language but I feel it was appropriate for emphasis]
I wouldn't say this was an issue. For most fixed price projects Waterfall is still the best methodology to use. Everyone trying to shoehorn the Agile methodology into everything they want to do nowadays instead of focusing on the basics is the reason why most companies get development so wrong.
I've worked on both waterfall and agile teams and have never found waterfall an enjoyable experience. Everyone has a preference. At least the teams I've worked on that implement waterfall the decision makers don't understand the negative impacts it has on software development. Agile IMHO reinforces teamwork but yes, it too can be misused.
If you have a scenario where a couple of devs are trying to make a decision about how a particular thing should work, and a manager comes in and shares their opinion and everyone basically just defaults to “okay, since the manager said to do it this way, let’s do it this way.”
I suppose it’s not an explicit ultimatum, but perhaps it’s a silent/implicit ultimatum.
I'm from Aguascalientes, Mexico! now based on New York. Most of my experience is related to code websites and applications, using JavaScript stack-based.
The team limits the face to face communication or any interaction.
The team avoid flexible communication (Slack, Skype, phone calls, etc), prefer pre-established policies.
The code has not tested code (sometimes related to a lot of tech debt and tight deliverables).
No one cares about the engineering side, preferring to keep architectural issues, trying to just release features.
Scope creep happens continuously.
Not on-boarded.
The promises made to bring you to the company does not match with the things you see.
Anyone can answer the question, because "everyone is busy".
Not technical people taking technical decisions.
The team limits the time to experiment with new workflows, architectural changes, technologies, performance enhancements, etc. keeping the project stranded.
No one cares about tech debt.
No one cares about project health.
No one cares about performance.
If someone has the bandwidth, prefer to keep use as a 'free time' instead of help other team members.
Managers saying 'yes' to everything and keeping the team burned out.
Dismiss PRs or enhancements because 'you are not familiar with something'.
The team takes decisions based on someone's opinion without debate.
The people are working after hours every time.
HR is more of a requirement instead of really working.
Even if you are an "expert", everyone wants you to be a code monkey.
No documentation.
No one takes the time to write the requirements properly.
External teams taking decisions in other teams forcing specific workflows, etc.
This is a very good list in my opinion, have been on a job (which was my first job as well) where I've experienced many of these. Thankfully these all felt like red flags to me & I ended up leaving the company!
Senior DevOps Engineer with 10+ years of experience. Otherwise an avid artist, reader, cinephile & football fan. Looking forward to connecting with everyone :)
For my former job, 11 of these were true. I stayed almost 5 years because I was convinced I could change things and make all of it better. I was so motivated. Then I gave up. It couldn’t be done 😓
Reading through the comments on this, apparently almost every job I've had had lots of red flag 🤣
I don't know that all of these are necessarily "red flags" for me. Many of the points brought up are things that could be easily changed with some effort. I think the real red flag with some of these would be, mentioning them to your boss and them not realizing or caring about the need for them to change.
I’m quite an optimist at times, but it’s not easy to change corporate culture. It takes a lot of effort to change. Sometimes all it can take is one team changing things and demonstrating the benefit, then a VP takes notice and sends out an edict from on high “We’re all changing!”. If there is no one hands on to facilitate the change, then it will fail. Some teams will bulk at the change, it needs to come from within to really be effective.
Silly hats & being called something related to the company. Forced to ride their branded cycles.
Team lead: "Everyone say hi to our newest intern. All members are called Nootooters for 18mths. Put on your happy hat!"
Dev: "I'm 42 with a Phd do I have to?:
TL: "Oh :sad face: I'm sorry to see you hate us. Now hurry :happy face:"
TL: "That's sooooo much better. See? Do you think? I have to scoot-toot along. Starbucks is on floor 3, their 8x mega latte vente with caffeine spike is amazing!!! Don't forget compulsory yoga is at 4 in the unity center. Attendance is optional. See you there, Nootooter "
Thank you! I didn't want to come across as weird on the internet or anything.
That was how physics used to work before the internet but the telephone cables would fall down & injure intrepid reporters so we had to switch to flat earth with a truman dome. My connection has been perfect ever since.
On top of what others have said, I have a few more:
you were hired for a specific team, but you get there and no one on your new team interviewed you (imagine being in their position in 6 months/a year)
you get there and no one is sure what you should work on first (lack of planning)
you don't have a PR raised on day one (or at least have things set up and you're close to getting something small done)
no one takes the time to help you navigate your way through code on your first few tasks
your team uses a process (and I include agile/TDD/pair programming in this) "because it's good practice" without really thinking if it makes sense
lots of meetings are a good indication that people care more about the stuff around developing great things than actually doing it
people on your team don't dogfood (use the product you're working on)
you're only introduced to your team
your team should take you to lunch the first day, or at least take you with them. A great workplace will take you to the pub for lunch/one evening early on, your team will want to get to know you
you feel pressured to work weekends/evenings early on
you feel watched or you have to guard your words/hide what's on your screen (if that happens for any reason at all, get out that day)
there "isn't time" to learn about new tech/libraries/etc that you think could be useful later on
you have someone on your team who rewrites all your code/rips apart your PRs/makes you feel like your a bad developer
everyone on your team should own the code, if you have one person (even someone with a job title like "tech lead") who must review everyone else's code and makes final decisions (or won't stop arguing until they get their way), that's a worry
Maybe he means a situation where there's no clear idea who is in command. Everyone's pushing responsibilities and decision-making to each other, making it hard to figure out who is leading the team/project.
Front end job isn’t front end. Copy and paste master
Inner politics ruining codebase.
Managements thinks they are better than developers (people leave).
Gossiping about x and y.
Timesheets must be done at 4pm AND emailed a list of things what you have done that day with detailed breakdowns (I messed mine up on numerous times and got called into meetings because the hours didn’t add up, and I wasn’t doing my work)
Arguing with only appointed git merger in the company what you have done in the code and why.
This is becoming a new post for me to write about. I have seen things you people wouldn’t believe, code on fire!
People talk about how great the furniture/space/building is, regardless of how well it actually fits the requirements of the job/company
Razor scooters in the office
"Play space" area in general (unless you're working at a toy company)
Resistance to adding/changing process to try to improve the development life cycle
Idolization of people on the board of directors, especially if it's based on them having been involved in a large project that happened to be successful (regardless of their personal involvement in it)
A big deal made about on-site facilities, especially things that encourage you to never leave
Being told that there's plenty of funding runway when you're interviewing, but then suddenly learning that there's actually way less money after you start
Being recruited by someone who seems trustworthy, only to find they weren't actually at the company (or had left by the time you started)
Especially if the person above "parted amicably"
CEO who flaunts involvement with TED/TEDx/random thinktanks
Constant product pivoting, and/or a failure to actually say what the product is
"We hope to be acquired" as part of the business plan
Being suggested that you "part amicably" when all the above finally becomes too much
(These are all based on one particularly weird month of my life at a startup in San Francisco...)
Top comments (56)
Can you tell I’ve been a contractor? 👨💻
I was a contractor for years (i.e always living without insurance, paid well, hated by EVERYONE). I feel you here and I agree with all of your points relative to a contractor job. I mean it, I'm saying this twice because it's REALLY IMPORTANT that any of the bullet points you mention is a definite red flag for a contract job. I've bailed on $200/hr jobs for things lessor (not bragging, the clients were just that stupid -and maybe me too for leaving?).
With that said, no single item on your list is red flag for a specific (non-contract) job. I'd say that you can pick any 3 things from your list and, at that point, start looking elsewhere. If you are fortunate enough to be working in a company that is aware of these (any of these issues) there is hope.
In my experience, if there are any of the issues you mentioned in any company whereby a manager is not also a developer (i.e. smaller/midsize companies) then bail. They will eat you alive and they don't care for your well being.
However, if you are working for a company that humbly (i.e. smaller/midsize) acknowledges these issues and is "trying" to fix them, I'd say it might be worth it to help out, be a voice, etc. Make the company awesome!
This is my qualifying statement: I've worked for many companies big and small. As a contractor you have similar experience. To ANYONE reading this though, seriously follow your gut. If it feels like a 'bad deal' get the fuck out as soon as fucking possible.
[sorry language but I feel it was appropriate for emphasis]
Team process is Waterfall?
I wouldn't say this was an issue. For most fixed price projects Waterfall is still the best methodology to use. Everyone trying to shoehorn the Agile methodology into everything they want to do nowadays instead of focusing on the basics is the reason why most companies get development so wrong.
I've worked on both waterfall and agile teams and have never found waterfall an enjoyable experience. Everyone has a preference. At least the teams I've worked on that implement waterfall the decision makers don't understand the negative impacts it has on software development. Agile IMHO reinforces teamwork but yes, it too can be misused.
Nice ones!
Well that ticks most boxes at my current job
Huh now it makes sense. In my former job, 7 of these points were (and probably still are) true 🤔
Can you expand on this? I’m curious.
Sure!
If you have a scenario where a couple of devs are trying to make a decision about how a particular thing should work, and a manager comes in and shares their opinion and everyone basically just defaults to “okay, since the manager said to do it this way, let’s do it this way.”
I suppose it’s not an explicit ultimatum, but perhaps it’s a silent/implicit ultimatum.
That does sound brutal!
I have worked in a team, where the manager (oblivious of the technical complexity of the PR) just announces, "this should be 'done' by the EOD"
hey could you expand on this one? Harmless office gossip is a good way of social interaction, no?
If your teammates are talking poorly about other teammates, that’s harmful gossip.
If they are talking about celebrity relationships, that’s a totally different thing.
In this context, I mean if your teammates are gossiping about each other, leadership, or even customers - that could be a red flag.
Oh I see, the underground politics going on & people saying things about others that they can't say to their face is definitely a red flag!
This one sends chills down my spine 😆
This is a very good list in my opinion, have been on a job (which was my first job as well) where I've experienced many of these. Thankfully these all felt like red flags to me & I ended up leaving the company!
This is very succinctly put Marco! Copying this with due permission to use as a question bank for later use.
Additionally, I found The Joel Test to be helpful towards finding any red flags before joining a new organization.
For my former job, 11 of these were true. I stayed almost 5 years because I was convinced I could change things and make all of it better. I was so motivated. Then I gave up. It couldn’t be done 😓
Great list. All too common.
Reading through the comments on this, apparently almost every job I've had had lots of red flag 🤣
I don't know that all of these are necessarily "red flags" for me. Many of the points brought up are things that could be easily changed with some effort. I think the real red flag with some of these would be, mentioning them to your boss and them not realizing or caring about the need for them to change.
I’m quite an optimist at times, but it’s not easy to change corporate culture. It takes a lot of effort to change. Sometimes all it can take is one team changing things and demonstrating the benefit, then a VP takes notice and sends out an edict from on high “We’re all changing!”. If there is no one hands on to facilitate the change, then it will fail. Some teams will bulk at the change, it needs to come from within to really be effective.
This
Silly hats & being called something related to the company. Forced to ride their branded cycles.
Team lead: "Everyone say hi to our newest intern. All members are called Nootooters for 18mths. Put on your happy hat!"
Dev: "I'm 42 with a Phd do I have to?:
TL: "Oh :sad face: I'm sorry to see you hate us. Now hurry :happy face:"
TL: "That's sooooo much better. See? Do you think? I have to scoot-toot along. Starbucks is on floor 3, their 8x mega latte vente with caffeine spike is amazing!!! Don't forget compulsory yoga is at 4 in the unity center. Attendance is optional. See you there, Nootooter "
Yeah. Stay away from anything like that.
Ick. That reminds me of my Kindergarten teacher. I hated my Kindergarten teacher.
Lololol.
Wait until they try to take your toys away for not saying what they want to hear.
That's the only time I appear.
Thankfully you are the Lord of Time & can make things go backwards like that scene with the weird physics in that superman movie.
I hated your kindergarten teacher too & the brat that always handed them fruit.
👍
Thank you! I didn't want to come across as weird on the internet or anything.
That was how physics used to work before the internet but the telephone cables would fall down & injure intrepid reporters so we had to switch to flat earth with a truman dome. My connection has been perfect ever since.
Stay strong Blue Star Man. Unwinding in progress.
I think the tech angle is covered, so let me add some from the business side:
On top of what others have said, I have a few more:
you were hired for a specific team, but you get there and no one on your new team interviewed you (imagine being in their position in 6 months/a year)
you get there and no one is sure what you should work on first (lack of planning)
you don't have a PR raised on day one (or at least have things set up and you're close to getting something small done)
no one takes the time to help you navigate your way through code on your first few tasks
your team uses a process (and I include agile/TDD/pair programming in this) "because it's good practice" without really thinking if it makes sense
lots of meetings are a good indication that people care more about the stuff around developing great things than actually doing it
people on your team don't dogfood (use the product you're working on)
you're only introduced to your team
your team should take you to lunch the first day, or at least take you with them. A great workplace will take you to the pub for lunch/one evening early on, your team will want to get to know you
you feel pressured to work weekends/evenings early on
you feel watched or you have to guard your words/hide what's on your screen (if that happens for any reason at all, get out that day)
there "isn't time" to learn about new tech/libraries/etc that you think could be useful later on
you have someone on your team who rewrites all your code/rips apart your PRs/makes you feel like your a bad developer
everyone on your team should own the code, if you have one person (even someone with a job title like "tech lead") who must review everyone else's code and makes final decisions (or won't stop arguing until they get their way), that's a worry
(May have more later)
I've never heard of shadow command? Could you elaborate more on that?
Maybe he means a situation where there's no clear idea who is in command. Everyone's pushing responsibilities and decision-making to each other, making it hard to figure out who is leading the team/project.
This is becoming a new post for me to write about. I have seen things you people wouldn’t believe, code on fire!
(These are all based on one particularly weird month of my life at a startup in San Francisco...)