Rules for job seekers to evaluate software companies?

16 points by Joltik ↗ HN
Awhile ago on here there was a post about a list of questions one should ask themselves to evaluate how good a software company is. One was making sure there was a dedicated test team because it's a waste of money to have developers test their own code. I have combed the internet forever trying to find this list but I'm turning up empty. If anybody could help a guy out I'd greatly appreciate it!

20 comments

[ 2.7 ms ] story [ 53.1 ms ] thread
A few random thoughts:

1. Check out their toilet if it's on-site.

2. How does the team do requirement analysis? Do they have a dedicated business analyst team or you guys have to do it, or no one is doing it and everyone is fighting for his own tickets?

3. Does the company HR/Admin send light-heart newsletters every once for a while?

4. How tight is discipline monitored?

> 1. Check out their toilet if it's on-site.

This! It’s a distillation of the whole group you’re dealing with from top to bottom (pun intended.)

I’ve worked where the toilet is on a different floor and that’s hell enough.
re Check the Toilet ...

There was a company, that to save money, had cut the hot water in the restrooms.

Another company visited to discuss having said company provide provide their IT as a service. This was long before the AWS et el. Both companies were Fortune 100 at the time.

The visitors, made the mistake of going to a restroom that was not in the executive suits area. They inquired about the lack of hot water.

The deal, which was hours from complete, fell apart.

If that company treated their employees so poorly, how can we expect them to treat us....

Yes visit the toilet to see if they care or just provide lip service.

Oops I guess they inquired the WORKERS about the lack of hot water, smart.
A lot of companies have half-assed migrations from AWS to GCP to save money, so beware:

- all docs still refer to AWS, so worthless

- server logging disabled

- untrained admins

- few SSD options compared to AWS

- live migrations causing outages

- broken terraform scripts.

Give them a year to sort out their new cloud.

a waste of money to have devs test their own code?

interesting.

I don’t know if you’ve worked with testers, but they think differently than devs. A good test org will also be slightly antagonistic to a dev team and that antagonism, plus a slight us vs them mentality can produce some amazing product results.

Testers also tend to be a little cheaper. To call it a waste might be a bit reductionist but it certainly hints at some organizational inefficiencies that may be recognizable once you reach a certain size.

There's a difference in mentality to say its cheaper or saying its better.
I think developers should test their own code. They should write unittests, they should have integration tests, and running these test suites should be automated.

If you are planning on keeping the code base around for a while and you are going to make changes to the codebase, then you are going to want this. Otherwise those expensive developers are going to take longer to implement the new features and they will introduce more defects into production.

Testers are nice to have, but your developers need to be doing this.

Two different disciplines though. It depends if you want to train your coders on how to test effectively. Not saying you shouldn’t and maybe there is a hidden advantage in doing so. But it’s definitely not a clearcut decision.

Even if they can it’s a hat switching thing. Building something from 9-10 and then trying to break the shit out of it from 10–11 requires some mental discipline.

For quality I’d rather have testers. Developers will test their own work anyway if they know shit work will be sent back.

The more devs you have on a project, the more testing becomes vital. If there are tests, you can work on the code with confidence that you aren't going to unwittingly break things.

Frankly, I think thorough testing makes my code better too. If you can't figure out how to test a function you just wrote, how are you going to get any real reuse out of it later? I don't do TDD, but often testing will lead me to refactor things to be clearer.

Ask to see the supply closet. If they cheap out on the small things (pens, for example), they will definitely cheap out on the big ones.
Is there any evidence to back this up?
Probably not. I work at a generally generous company that doesn’t pay too much attention to expensive pens etc. they would order anything you wanted though but most devs are happy with a biro and spiral notebook.
Don't put words in my mouth. Pens don't have to be expensive, just not cheap garbage. Same with notebooks and so on. It's about having the most basic tools to do your job.
Honest opinion is the compensation has always largely correlated with the quality of the job and how youre treated. Companies that pay less often want to squeeze out more.