Do companies that hire programmers expect them to work overtime, like even when they're at home?
I'm about to send my resume to a bunch of companies but I'm afraid once I get a job I'll have no time for myself anymore. I really want to beat Earthbound but responsibilities are already taking up enough time as it is.
Will I have more free time, or less free time, when I get out of college at the end of this semester and have a programming job?
Does it depend on -what- you're programming?
Name:
Anonymous2006-05-09 22:34
Different companies have different cultures. The New York brokerages like Goldman expect 60 hours/wk and ask you in the first interview if you're willing to do that. Some government departments look the other way if you leave the office after about 5 hours in the morning. I think the average is 35 hours/wk until the month before the project deadline, then it's 12 hours/day and Saturdays too. That'll happen 3 or 4 times per year.
Even within a large company the culture can vary from one project to another.
And there's a steep learning curve your first year when you find that school has barely prepared you for real software systems. That takes extra time. An experienced boss will be watching you closely during that first year. If you rise above the mickey mouse intern assignments and prove yourself on real heavy duty apps, he'll want to keep you and you might get a 40% raise.
Database designers and system architects are usually the top of the heap. Volunteer for design assignments when they come up and do them well so the boss trusts you with more and more system architecting. Study design memos the experienced architects have written until you understand their reasons for arranging data flow a certain way. Those decisions usually comes from 10 years of hard experience. Read up on Oracle or whatever database they use and be ready to answer questions that come up about how to do X in Oracle. The DB guru is a plum position. Ditto for network security expert in some companies like banks.
Tracers and debuggers can be real handy when you maintain existing code. Keep on top of the best tools in that area.
I could go on, but nobody reads this far into a post.