
Ask HN: What makes a good place to work? - silversmith
For some time I&#x27;ve wondered what makes a place of employment more than just a sweat-to-cash conversion machine, something you can enjoy. As a developer, I know I have my preferences, and I know my current colleagues more-or-less share them. But do others? Are there any universal developer-values that make one place more attractive than another? Besides fat stacks of cash of course.<p>Couple years ago on a whim I started studying for MBA, and now that it&#x27;s drawing to a close, the school is asking me to do some research. I&#x27;ve decided to tackle this question - what makes a good place to work, for a software developer?<p>So I&#x27;d like to ask you to take five minutes of your time and help me - would you please fill out https:&#x2F;&#x2F;survey.mikoss.lv&#x2F; ? The diversity of HN crowd should make for some interesting data. Thank you in advance!
======
ryandrake
Here's one thing I've been thinking about more and more: If you think about
your tech job as a sports game, you have offense plays and defense plays.
Offense can involve anything from creating great things, building sw
architecture, designing features, presenting results to management,
prioritizing workload, thinking ahead, and planning for the future. Defense
includes fixing bugs, cleaning up technical debt, putting out fires, dealing
with angry customers, defending the team from micromanaging execs, answering
pop quizzes from the boss, justifying your actions, proving you're doing your
job right, doing postmortems, and looking backwards. The offense plays are all
about creating stuff and driving things that happen, while the defense plays
are always about responding to things that happen and anticipating so you can
respond better.

The worst jobs I have had were nothing but running defense day in and day out.
Putting out fire after fire, with management who evidently hired me to put out
fires yet don't trust me to do it right. There must always be a little
defense, but primarily I want to be running offense, getting in front of
things, and driving forward. It's empowering, satisfying, and you leave for
home every day thinking "without me, XYZ wouldn't have gotten done" rather
than "what urgent thing did I fail to respond to today?"

When applying for a role, I'd try to figure out how to probe interviewer to
get a feel for whether or not I'm applying to be on the offense or defense
team. It makes a big difference morale-wise, job satisfaction-wise, sanity-
wise!

~~~
falcolas
Creators vs. Maintainers.

There are some people who really enjoy the Maintainer role, and will not enjoy
being on a Creator team, and vice versa. It's always important to know which
you are, so you don't find yourself going crazy or facing a skills mismatch.

~~~
dasmoth
I agree.

Current trends in software ("agile" in particular), seem to push against
allowing this kind of distinction to develop, and give negative connotations
to maintaining code developed by another team ("thrown over the wall" seems to
be the preferred expression).

Any thoughts on how to structure things so that maintainers and creators can
both focus on their strengths without too much tension?

~~~
falcolas
Finding the right balance usually requires, unfortunately, a very mature
company with a policy of keeping talent happy and a strong R&D department
(which requires a lot of income to maintain). The creators get to thrive in
R&D while the maintainers get to thrive in working on very mature (and usually
profitable) codebases.

I say unfortunately, since those companies tend to look like (and are) Oracle,
IBM, Microsoft, etc. Oracle, in particular, has a policy that you can make any
lateral move you want at almost any time; at the cost of pushing out your
eligibility for a raise.

This kind of flexibility doesn't exist in most startups; I've personally been
turned down for a lateral move within a startup because I "failed" a
whiteboard interview. Startups also don't tend to attract the Maintainer
personality since they are considered startups because they're creating
something new.

I also think they have trouble with easily accepting lateral transfers because
there's so much raw talent banging on the doors that it's appealing to bring
in outside help on new projects. Especially since a transfer will be viewed as
a loss of critical knowledge about the project that just switched into
maintenance mode. What's missed is that the person who requested the transfer
is probably going to leave anyways because of a the mismatch with their new
job role and what they _want_ to do.

------
AlexB138
For discussion purposes, in order:

    
    
      - A team I enjoy working with.
      - Career growth, solid pay and benefits.
      - A culture that doesn't tolerate toxic people or excessive politics.
      - A quiet environment where I can concentrate and/or remote work days.
      - An interesting project.
    

I used to care more about working with resume building technology. As I've
gotten older, I care a lot more about interpersonal issues and my work
environment.

~~~
friendzis
Would you care to elaborate on what you consider to be toxic people?

I have met people that are hell to work and/or interact with, though the word
toxic does not come to mind when trying to describe them, therefore I'm
curious.

~~~
pascalxus
The problem isn't toxic people. No one wakes up saying, gee, it's a great day
to be toxic today. The problem is toxic environments that incentivize people
to become toxic. This usually happens due to overly stressed environments,
that don't have Work/life balance, with deadlines that are way too aggressive,
thus culminating in a pressure cooker environment, that's sure to blow up
sooner or later. Once, you relax those constraints, everything else can work
out and people don't have to become toxic.

~~~
friendzis
Strangely, the worst people I had to deal with were self-centered little-
capable know-it-all egoists. Whatever question arises they have their opinion
and know better. Thrown at a problem they try to raise their hands and float
out of there or half-ass minimum viable prototype and leave it for others to
fix. They go out of their way to make things suit their personal agenda. Need
half of their hour to make a release? Sorry, cannot delay my daily jog. They
promised something will be done (probably to client)? Will try to maneuver
three levels of management to coerce someone to do it, because they lack
competence to do it themselves and are not willing to learn. Such were the
people I found barely bearable to work next to.

~~~
jrs235
These are more than likely narcissists.

And they are extremely toxic and dangerous. It is best to avoid them, keep
them away, or leave if you can't make them leave.

------
osullivj
In my 30 years of experience, the single biggest factor is your manager, the
person you report to. My last permie gig (2010-12) had great tech, great pay &
great colleagues, but all that was negated by shitty slave driving chaotic
management. Conversely my 2004-2010 permie role was at a firm that had a bad
reputation as brutal hire and fire shop. But 2004-7 was a career highpoint for
me. I built great software and a great team, got promotions and bonuses. Then
my manager left for another role, I was exposed to the vicious politics at the
next level up, and things went south. Now I'm a contractor bootstrapping on
the side. If I get my venture off the ground I want it to be a dev shop that
folk never want to leave.

~~~
silversmith
One of the managers at my very first job put it best: a good manager is like
an umbrella, shielding you in the downpour but somewhere out of sight in the
sunshine. Meaning, a good manager isolates the employees from in-fighting in
the above levels and takes the blame coming down, but exposes the team to
praise when a project is going smoothly.

~~~
bbcbasic
Isn't that a bit like a leaky abstraction. Even with an umbrella your ankles
will get wet! For example if you have to work with other teams members who are
toxic to get a project done then there is only so much your manager can do if
that toxicity is the median behaviour.

------
joeax
My criteria:

1\. Being able to work from home.

2\. Being able to work from home full time.

3\. Getting paid well.

4\. The work is gratifying and challenging.

Personally, everything else is fluff and unnecessary: Ping ping tables, free
drinks, beer carts, the right "fit" or culture (no place is an exact fit, and
even if so, people come and go).

------
ChuckMcM
I have thought a lot about this question over my career both as an employee
and as a manager wondering how to make the environment better.

One of the conclusions I've come to is that the group dynamic is unique to the
individuals in the group. This means that people who get along with each other
have a better experience at work than those who don't (which is kind of
obvious) except that the _mix_ is important too.

When I first started hiring I focused on the technical requirements of the
role and experienced hiring people who were incompatible with other members of
the team. And I have also experienced people who just made everyone else on
the team more functional. Sometimes it is obvious, people who are blatantly
prejudiced or misogynistic, sometimes it is more a subtle introverts and
extroverts.

But when you get it right and people get along well, and the problem is an
interesting one, and everyone feels like they are contributing in a way that
is both valued and part of the bigger plan, they respond very favorably on
surveys about great places to work.

As an employee I look for checks on antagonistic behavior of peers, and enough
transparency so that I understand what is important and what isn't. And of
course a level of autonomy and delegation that is appropriate for my
experience level. Nothing really crimps my style like a manager telling me how
to do my job every day.

I've known employees however for whom what is important is simply the quantity
of office 'perks.' Free stuff like food, t-shirts, and field trips. They do
enough work to not get fired but not much more, and they really don't take
anything outside the office (as soon as they leave the building they forget
any and all work efforts, or at least put them out of their mind).

Bottom line, a good place to work is where you get along with the people you
are working with and share respect. Pretty much everything else is noise.

~~~
reckoner2
I think "team fit" as you've described is probably the most important factor
for me. But it's a really tough thing to interview for / create within a team.

I had a coworker who could be described as a 'social butterfly', someone who
can talk to anyone for hours on end and make them feel comfortable. They would
spend half an hour with each interview candidate, not asking any technical
questions, but just having a friendly conversation. Then they would give a
'yes/no' opinion of whether we should hire the candidate. All of their
preferred hires were very successful and fit in with the team. It was
remarkable. Some people are just excellent at reading others. Most people
really aren't sadly.

------
logfromblammo
Some of the extra items:

Individual office with lockable door, and you get the key when you move in,
rather than hunting someone down to ask for it.

Work weeks are maximum of 40 hours.

You have one boss at a time, and you know who that person is. Your
supervisor's boss will never ask you to do anything directly.

No on-call after hours, ever.

A wall of separation exists between work life and social life. Social
opportunities with co-workers exist, but can be skipped without consequence.

Performance that exceeds expectations is recognized and rewarded.

~~~
twobyfour
That office with a door.... Who offers that these days, and can I please go
work there?

~~~
logfromblammo
Personally, it's gone like this:

    
    
      Year  Workspace     Door?  Locks?  Key?  Window?
      1     1/4 cubicle   no     no      no    yes
      2     pair office   yes    no      no    yes!
      3-4   home          yes    yes     yes   yes
      5-6   office        yes    no      no    no
      7     5/8 cubicle   no     no      no    yes!
      8     1/4 cubicle   no     no      no    no
      9     office        yes    yes     no    no
      10    3/4 cubicle   no     no      no    yes
      11-12 full cubicle  no     no      no    no
      13-14 office        yes    yes     no    no
      15-17 office        yes    yes     no    no
    

Locations are 1-4 Chicago, IL; 5-8 Madison, WI; 9-17 near-South military-
industrial complex, USA

It seems as though companies that require security clearance placed higher
value on doors, locks, and the dangers of overheard conversation. They have
always had at least 3 standard-height cubicle walls per employee. Although
windows are apparently a security risk.

But no one seems to care about whether employees can lock up their own
workspaces upon leaving work. My offices of late have always had locks, but no
one ever bothers giving me the key. To anything. Not the door, not the desk,
not the cabinets. That's why I can now pop the lock on office furniture with
just a paper clip and a binder clip. I'd only leave anything valuable in my
workspace if I had a key to the door lock, and as you can see from the table
above...

------
leggomylibro
1\. Get paid enough to pursue interesting hobbies in my free time.

2\. Have a contract that lets me own anything that I create that doesn't
relate to my work.

3\. Have enough free time to pursue interesting hobbies.

That's about it, really. Autonomy at work is important too, but I can overlook
a lot of bullshit if I have something to look forwards to at the end of the
day.

I like to learn and make things. That's a big part of why you hired me. Don't
restrict what things I can learn and make. Don't claim ownership of things you
don't pay me to do. Not only is it unenforcable and unethical, it encourages
me to leave at the drop of a hat if I think I'm on to something. I don't
understand why this is a controversial topic with so many employers.

------
pdelbarba
I'd say a big one for me is hours. I'm currently capped at 40 hours a week and
couldn't be happier.

~~~
silversmith
This seems to be a uniquely (?) american cultural issue - in my eastern
eouropean working experience the long weeks are few and far between, and it's
generally accepted that you take it easy when the crunch time is over.

Is that the same across all industries in USA? From what I've talked with some
finance guys from the states, they have their hardships when it's time to
close the year (or maybe quarter), but get to slack off later on. Only in
software does it seem to go from mad rush to "normal" level to mad rush, never
dipping below. Or am I mistaken?

~~~
DanBC
I used to work in sub-contract electronic engineering in the UK.

The company would send an invoice to the customer. Payment would be 30 days
after the month end that they got the invoice.

They had a sort of Just in time system - all the orders for components would
be placed in month one, for delivery on the first day of month two. Everything
would be booked into stores, and then kitted out onto the shop floor. The
product would be built, and delivered, before the end of month 2, which meant
that payment would be received sometime in month 3.

Sometimes components would be late, or there'd be more to book into stores and
to kit up for the shop floor, or the wrong item would be sent in. All of these
push production back a few days, and since production was aiming for shipping
on day 30 without delays it meant that there was always a crunch from day 25
to 30, every month.

What the company could have done is taken one or two people from inspection
and put them onto goods in at week one of the month and inspection at weeks
two, three, and four of the month.

------
gorbachev
The survey is missing team dynamics type of stuff. Do I enjoy working with the
people I interact with most frequently. If I don't, everything else in the
company could be the best in the world, but I would still hate my job. I think
there are two components to that...are they competent and how well I can get
along with them.

Also my current employer is very, very active in philanthropy and charitable
activity. While I don't personally take advantage of those opportunities all
that much, I know a lot of other people in the company do, and it's a big
factor why they enjoy working here.

------
pascalxus
\- Good work/life balance

\- Stability (can remain in the same job 5+ years)

\- Money and benefits

\- Close commute

I find that the Work/life balance part of it is the most important because
this is the most important factor that influences almost everything else:
cooperative culture, better teamwork, no toxic environment, less politics, no
stabbing in the back, etc.

~~~
AnimalMuppet
Work/life balance, absolutely. I've got a wife and kids. I don't live and die
with the project meeting some arbitrary deadline. You want it to ship by a
certain date? Fine. Control the feature list. You want it to ship by then plus
have all the features everyone can dream up? Sorry, I'm not going to kill
myself to make it happen.

Now, in this business, I get that crunch time happens sometimes. I accept it
as part of the job, _as long as it 's rare_. One month a year is reasonably
rare. (On my current job, it was one night in seven years.) One month out of
two is not rare, and I won't put up with it.

~~~
jrs235
Crunch time should rarely ever happen unless the people having to crunch are
the ones that agreed to and bought into the project, its scope, and deadlines.
That is rarely ever the case. The implementors are rarely the ones that have
enough say or control over scope, time, or budget. The one(s) that made the
promise(s) should be held accountable for their failure(s).

~~~
ExactoKnight
There's also the factor that some people are chronic workaholics who can't
separate work from real life.

When you're learning to code early on the push to become a "stronger"
developer makes it easy to pursue this.

------
dcwca
I'll fill out your survey, but also answer here for discussion:

\- A purpose and mission you can believe in

\- Opportunity for personal and professional growth

\- A high quality team to work along-side and be inspired by

\- A diverse and inclusive atmosphere

~~~
TulliusCicero
\- Money

~~~
dcwca
That's under "professional growth". The idea that you advance in your career.

~~~
asdfologist
Things that advance your career don't always come with money upfront. Example:
unpaid internships.

~~~
probinso
Unpaid internships are a lie told in industries who undervalue their hiring
pool.

~~~
asdfologist
I disagree... Price is dictated by supply and demand. Industries are paying
nothing for these interns because they can get away with it, not because they
consider them worthless.

You pay nothing to breathe oxygen. How valuable is it to you?

~~~
ExactoKnight
When you need something done right, you pay for it.

When you do unpaid work, it means that it's work that doesn't matter, which
means it isn't providing you with much in terms of valuable skills.

------
combatentropy
Ideally I am making something beautiful. This means languages and tools that
are well designed and easy to use, enough time to make the program beautiful,
and little or no bureaucratic paperwork to suck away energy.

It is required that I make something I believe in, that I think is actually
helping people. Note that this can be different from making something that
people ask for or something that tickles their fancy in the short term but
causes damage in some way long term.

I would like to be paid the industry average for what I do. If I am paid a lot
less, it had better be because I work for a nonprofit or something (see above
about helping people). It's also dangerous to be paid a lot more than average,
because I don't want to be a target for layoffs.

I work with a laptop in my lap. I am low maintenance. I don't really want free
soda, ping pong tables, company picnics, free tickets to the game. I just want
a company network that doesn't flake out, high-quality open-source software
wherever possible, and minimal management.

------
trapperkeeper79
You got into an MBA program on whim? Was it full-time?? I look at the sticker
price for the degree (around 100K just base tuition for a top program; more
than double that in lost income). Even a part-time program seems like an
expensive proposition. I just cannot justify it as a mid-career tech
professional.

------
s73ver
Pay rate. While money is not the only thing in the world, a company that
doesn't pay well probably isn't going to be enjoyable to work at, either.
People who are worried about making ends meet are not always pleasant to be
around.

------
jeffclark

      - clear understanding of the problem I am being asked to solve
    
      - major influence (if not outright ownership) of the solution to that problem
    

Good bullet points for anyone who works, not just software developers.

------
mnm1
Being at least a mile from your nearest coworker, preferably hundreds or
thousands of miles and not having to work unpaid overtime (slave labor). To be
fair, the latter is by definition included in the former if you have any kind
of sense and self-respect. That literally solves 99% of work problems. The
other 1% is communication. I didn't say it was perfect.

------
edw519
I gave anything related to what I was actually working on 5 stars.

I gave everything else 1 star.

This has always been pretty binary for me.

When I have loved working on what I was working on, nothing else could have
screwed that up. I just kept plowing on, motivated almost solely by
compulsion.

When I have not loved what I was working on, nothing else could have helped
except working on something else that I loved working on.

------
webscalist
\- no mac

\- vim

\- no javascript

\- no overtime

\- no on call

\- personal projects on fridays

~~~
Haul4ss
What do you have against mandatory access control?

------
newsat13
If you are look into a startup, beware of companies that are in "growing"
phase. While this might get you all pumped, in most cases they just sideline
you if you are not the decision maker (Which is what happens if you are a
developer).

~~~
ExactoKnight
What do you define as a "growing" phase? 10 people? 30 people? 100-200 people?
Uber 1000+?

------
Tempest1981
Can you separate out the HN responses from the Reddit responses? Saw the same
link in
[https://www.reddit.com/r/SampleSize/](https://www.reddit.com/r/SampleSize/)

~~~
silversmith
In the end I'm striving for a larger sample size.

I did not build in any 'hard' differentiator for source, but I should be able
to get a feel for the distribution by the timestamp of answers, as I tried to
space out the submissions to social media sites. I'll try to remember that for
when it's time to publish the results.

------
dasmoth
Ability to work independently on something for non-trivial stretches of time.
The kind of team-oriented working that needs daily synchronisation is bearable
some of the time, but unsatisfying, and burns me out pretty rapidly.

------
adrianpike
Will you share the results when you're done? I'd love to see the patterns!

------
Aldo_MX
I would focus in career growth, a company where it is too bureaucratic and
cumbersome to grow, eventually decays and causes employees to burn themselves
out.

------
itodd
I filled it out. Good luck to you. I hope you'll share your findings.

------
ven_bug_trap
Filled out, really interested to read the results if you publish them!

~~~
AnimalMuppet
Agreed, when you publish, please post an article on HN with the results.

~~~
silversmith
I will. Probably not the paper itself, but definitely the results.

However, given my previous experience with how fast I work, don't expect it
faster than tail end of may / early june.

------
j_s
Coworkers can make any place less bad to work, or just bad.

------
bjourne
When asking people to fill out survey forms, it is probably best not to be
anonymous.

~~~
eeZah7Ux
Why?

