TL;DR: The three main things I look for in a company are competitive pay, work/life balance, and an understanding of the value of specialists.
The three main things I look for in a company are:
- Competitive pay
- Work/Life balance
- Understand the value of specialists
I only consider work in downtown Portland, Oregon, or with a fully-distributed company. I'm not interested in working at a company with only a handful of remote workers because when the majority of employees are centralized in one place, inevitably the remote workers get left out of a lot of discussion. Fully distributed teams are better at ensuring all communication happens online. See this post for more perspective on how this alienates remote workers.
Company type and size
I prefer small to midsize companies. Large corporations leave me feeling like an interchangeable cog in the machine. I prefer either interactive agencies or mid-stage startups that have managed to set a sustainable pace and encourage work/life balance.
The following are things that are important to me in the culture where I work.
- Work/life balance: I have a family, and I work so that I can support them, not the other way around. I don't mind working late or on weekends when the need arises, but I have a serious problem with companies where long hours are the de facto norm. A company that keeps everyone working right up to the burnout point is a company that doesn't know how to effectively plan.
- User-centered: Every decision should be made based on whether it benefits the people who actually use the product. I've never had a good experience working on a product where the paying customers are not the people using the app. This always leads to conflict, and the end users always get the short end of the stick.
- Collaboration: I want to see developers pair programming. I want to see frequent code reviews and standards discussions. I want to see team members giving trainings and sharing what they've learned.
- Values specialists: I need to work somewhere that understands the value in hiring specialists. I am a senior-level front-end developer. I don't want a job where I'm expected to do design work or back-end development. If you want to hire generalists or "full-stack" devs, that's your prerogative, but this won't be a good fit for me.
The following things will excite me about your organization. Think of them as bonus points!
- Flexible work schedule
- 20+ days of vacation leave
- Unlimited sick leave
- 401k matching
- Public transportation benefit (eg, pay for my bus pass)
- Quality equipment for devs (eg, mac laptops and cinema displays, not decade-old Dell monitors)
- Support for employees using company time for professional development, open source contributions, and community outreach
- Support for employees attending conferences
- Support for the local tech community
- Sponsors progressive & diverse initiatives like AlterConf or Girls Develop It
The following things will make me less excited about your organization. They're not dealbreakers, but I will probably ask to be paid more if some of these practices are present at your company.
- Pager duty or other on-call requirements for CSS devs. This conflicts with work/life balance for me.
- Heavy travel. I don't mind a few trips a year, but I don't enjoy traveling, and don't want to do it much.
- A combined sick leave/PTO policy. This punishes employees who get sick or have families by giving them less vacation.
- Policies that limit what employees can do in their free time (eg, banning employees from contributing to open source).
- Support for IE10 and older. I can do it, but it makes me sad.
- Cubicle farms
- Company firewalls restricting access to social media. Ignoring the lack of trust this shows, it makes it difficult to do my job.
- Timecards. I'm a salaried employee, why do you need me clocking in and out? In an agency, logging time against client projects is fine, but when your billable time has to add up to 40 hours, something's not right.
The following are dealbreakers. Your organization is not going to be a good fit.
- Heavy drinking culture. This doesn't mean no drinking ever, or that I'd never work somewhere with beer on tap, but if it's the only social activity offered, that's a cultural red flag.
- You don't have an HR department
- Your company is nothing but white dudes