Landing your first role as a software developer can be a pretty difficult task. You might apply for over a hundred jobs and only get one offer. You’re going to want to take that offer because the vast uncertainty of unemployment is unbearable and you need to start making money. Who can blame you?

If you do have the luxury of holding out for an offer that you’re excited about, here are some things to consider.

Do they neg you when you’re trying to negotiate their lowball offer? They might use the strategy of insulting you in order to undermine your confidence and seek their approval. As if you would fall for that. Maybe turn it around on them? You’d be my hero. Do they try convincing you that their lowball offer makes sense because of all their perks, which are either industry standard or paltry? Do they think you can be bought by free soda? You’re a developer. You can afford soda and snacks…provided you’re being paid market wages. And hell, do you even want 24/7 access to sugary/fatty/salty snacks? Maybe. If they’re providing that fully paid health insurance they should be providing because that’s step 2 in winning over developers. (Step 1 is $$$.) Are you, the newbie, going to be one of the best developers in the office? Maybe it’s a startup where they don’t have much funding but they still want a lead developer so they’re willing to settle for you. Odds are you’re going to get paid in equity that will never have any cash value, and you’re going to be expected to deliver what you can’t so you’re constantly stressed. Or maybe you find yourself in a whiteboard interview for a larger company where you write out some perfect code and the dev manager is baffled. You don’t want to know more than your manager. She should be leading you. Are all decisions in development made by one overlord? This creates a serious bottleneck. Even worse, it means that your input won’t be taken very seriously and you will have to roll over and die when bad decisions are made. And when I say bad, I mean the kind where your mouth drops open in awe because you weren’t even aware that was a possibility since it’s 180 degrees in the opposite direction of anything reasonable. Is there even a project manager? There might not be because the overlord wants all the control, which means there probably won’t be any rhyme or reason to what happens. This can happen at mid-size companies because they grew from tiny shops and barely changed their management structure. Are there any senior developers? I don’t mean people who’ve hung around there for a long time due to complacency. I mean, are there people around who are leaders and provide guidance for less experienced developers? Or is this the kind of place that likes to save money by mostly hiring people straight out of college and/or boot camps? If they’re putting that little into their development department, you’re probably going to stagnate. Is there any testing going on besides click testing? The overlord might scoff at testing and insist that QA is done through click testing only. This isn’t a good idea, as you probably know. It’s not going to make you a better developer, and when you move on, you won’t have the testing skills you need. Do they have code reviews? Maybe all the code gets pushed up so QA can check it out through click testing, and then it’s deployed. WTF? No! Someone should look at your damn code before it goes live. You could have made a gigantic mess that will only show up once it’s been deployed. You need oversight. You’re new! You deserve a senior developer guiding you so you can write good code and constantly improve. That’s actually what’s best for everybody. Is there any diversity in development? Just going by statistics, there probably isn’t. But if there is…ooh boy! Are there any other open positions?? Hit me up!

If there isn’t, does that breed a frat culture that’s toxic? It might. Heck, it still might be toxic even if there is diversity. Check on how much turnover there has been in the development department in the past year. That should tell you all you need to know. 50% and up? Run. If there’s any turnover at all, I’d ask for an explanation, not in a challenging way, but because you want to gather information. You’re making a very important decision so you should have access to relevant information. Is there anybody who’s trained in UX? There might not be. And if it’s a frat culture, the place might be full of devs who groan at the thought of coding the front end. Styling it could be their nightmare. You know how people say, “This feels like developers made it”? They mean it feels all wrong, like nobody thought about the user when making the product and it only makes sense to developers. Remember on Silicon Valley when they released Pied Piper and people were confused on how to use it so its adoption rate barely registered? That’s what I’m talking about. Did they rebuild their bread and butter product that worked nearly perfectly in a hip new framework just because it was hip and new? Seriously. This is a thing. And let me tell you, everybody in the department learned that hip new framework on the fly and now there are hundreds of bugs and users are banging their heads on the wall because WTF!?!?! But good news for you: this means job security. Bad news? You’ll be sifting through code incredulously and shaking your head frequently. You’ll grow tired of sighing and stop altogether. Does anybody care what developers do all day or could one disappear for hours and not have to account for the time to anyone? Is the development department taken seriously or is it basically part of a sales company masquerading as a tech company that has a few developers? Maybe you dig that cause you can lose yourself in the void and spend all your time on Reddit and YouTube. But I’m guessing that you actually want to be challenged and code, which is why you’re applying for the job, so it’s going to depress you when no one cares what you were up to all afternoon.

You worked hard to become a developer. You deserve a professional environment where you can enjoy growing your skill set by doing challenging work in a friendly and safe environment. You deserve strong project management and competitive pay. I really hope you get it.

— —

If you found this post useful, please also check out This is for struggling web dev boot camp grads.