Parenting and a Career in Coding?
el topher asks: "After 5+ years of being married, my wife and I have been blessed by her becoming pregnant. I've professionally been a programmer for a while now and am now concerned that commercial software development is not a good job for a dad to have. Thinking back on all the software development groups I've been in, it seems most of the coders were not parents, and the coders that were parents seemed to have trouble with things like dealing with unplanned death marches and not being there for their family. So my question to the programmers with kids out there: How does a programming career jive with family life? I'd especially like to hear about parents who have been coding for a while and the situations in this area they've faced."
I used to work at startups and I currently work at the in-house development department for a major HMO (it's a big department, like 3500 people). The work itself hasn't changed a whole lot, but the expectations about hours certainly have -- at my current job, we're not relying on the next release to stay alive so there isn't a constant scramble to push product out the door. I've found, incidently, that this suits me much better than high-pressure 90 hour work weeks.
You might expect that sort of job to pay less, but it actually doesn't. Sure, I'm not going to become suddenly rich off stock options, but who does these days?
My advice would be to look for a job like mine -- someplace stable and with reasonable expectations when it comes to the hours you work. That's going to be someplace big and probably someplace in a industry where software/hardware isn't the big money-maker. Be sure they know your priorities; an interviewer at the sort of company you're looking for will respect a commitment to family. After all, these sorts of people are looking for *you* to be stable, too...
Aside from that: Kudos to the author for realizing that his kids are more important than the software release. Bringing home the bacon is important, but it ain't everything -- When I was with the startups, all of the parents just dumped their kids into daycare and with babysitters a week after they were born -- our sales VP probably spent a week total of waking time with his new daughter over the course of a year. Bet he felt really good about that when the place went under...
Every year during my review, I just pray the words "slashdot.org" aren't mentioned.
I've been programming for about 13 years now, the last three of them as a parent. This has been compounded by the fact that my wife is even less of a stay-at-home mom than I am a stay-at-home dad. The truth is that it's workable, if somewhat demanding. Here are a few suggestions:
1. Tagteam the kids. Take turns keeping them distracted while the other one gets stuff done. This gets much easier after they start to walk, although you REALLY have to childproof your home if you're going to get any programming done while they're keeping themselves busy.
2. If your boss would fire you over putting your family over your job, you need to find a different boss. As long as it isn't a continual parade of parental interruptions, most employers are entirely understanding when family life interrupts.
3. Encourage your employer to use a better management technique (for instance Scrum), which doesn't encourage forced death marches to make up for bad planning. Programming is a demanding field, but if your employer expects you to wreck your health over a deadline, then they're doing something wrong, not you.
4. Don't expect to be a perfect parent. Perfect parents don't really exist because parenting is always a tradeoff between overmanaging your children (in which case they don't learn) and letting them run too freely (in which case they get hurt). If you have ANYTHING to do besides parenting then you will have to juggle that priority in with that balancing act. If you don't have anything to do besides parenting, then it isn't likely that you'll have the perspective necessary to make healthy decisions.
On the other hand, programming trains you for parenting pretty well. The long sleepless nights, the time spent explaining very simple things to really stoopid people, and the ability to tune out the rest of the world all really help when dealing with children.
Wake up - the future is arriving faster than you think.