+1  A: 
vartec
A: 

If you work at a non-software house, you will always be a second class citizen (in my opinion). Software houses treat their developers well, because their business depends on them.

Mark Ingram
Well, I don't think this would be a major concern for me. What i'm focusing on now is the effect that this job might have on my career.Any ideas?
Galilyou
I disagree with this completely. In a decent non-technical company they will treat the programmers like the golden geese they are. Conversely, some software houses treat their workers like they're sweat shop interns. It's more a function of corporate culture than whether or not they're technical.
Shaul
@Shaul, definitely agreed.
Galilyou
I don't think any job in the field of programming could be "bad" for your career, there are certain jobs which are good for it. Except for perhaps taking a VB job if you're trying to direct your career down the c++ route.
Mark Ingram
Actually VB also does not matter. What does matter is to deliver a software that helps your customers/ company. If it is easy to do it in VB why not?(I have no special love for VB but only making point that in programming people often seem to have more love for programming than actually delivering something).
Sesh
A: 

Not neccessarily... If software is your core business, then your programmers may be seen as a major cost. A software programmer in a large NON-software company may give better hardware, more perks, allow you to use more expensive frameworks and tools, and so forth.

(Obviously, this does not apply if we're comparing against a good software company, I'm just being a cynic and comparing with what I think a typical company might do).

Arafangion
+6  A: 

I have worked both for software houses and non-technical companies.

Interestingly, and most counter-intuitively, my best job experience has come from the non-technical companies!

Inside a technical company, your role can become very niche, very fast. That's not necessarily a bad thing, because if you become the expert in a particular field, it can be a big plus on your resume. It's also great to be able to draw on the experience of other, more experienced programmers. But it can also get boring, because you can easily get pinned down in a specific role and not grow anywhere else.

OTOH, in a non-technical company with a smallish IT department, the technical people have to be everything. You cannot get away with living in your own little comfort zone; you have to know every aspect of the program, not just, say, the communications layer or regular expressions or web page scraping. You need to know networks, databases, interpersonal relationship management with your internal users, sometimes even business strategy. And that experience is invaluable.

In summary: as a career path, I would recommend starting out in a software company, get as much experience and learn as much as you can from the senior programmers. After a few years of learning how things should be done right, then you can start thinking about taking your experience into a non-technical company.

Shaul
I think the opposite would be helpful. Start at a non-tech company where you will be forced to do everything from design, coding, GUI, build, testing, installers...work so for a couple of years and then go to a software company to develop expertise in area you like. In tough times like these, it will actually help if you start with a wide variety of skills.
Sesh
+1  A: 

I would say most of these answers depend entirely on the company you will be working for.

Here are my attempts to answer your questions:

1 - I doubt it, as it will broaden your knowledge of the software industry.
2 - Certainly not totally bad. Although it might not be excellent, depending on the company, it's products and it's working practices.
3 - Definately, it expands your knowledge, gives you a different viewpoint on software then that of a software house, opens up other industries knowledge to you, and gives you contacts in that industry.

Bravax
+1  A: 

Flextime, 1 day work from home a week, $2500 laptop every year, 1 major conference every other year, 15 PTO days, and market rate salary for the geographic region for your experience level. We are a Microsoft shop, and try very hard to stay reasonably current in tools and systems so our workers skills don't get stagnant.

No one micromanages you if you don't need it. You work with your boss to set reasonable deadlines for all your tasks (and you're expected to hit them). The team in the last 3 years has a soft and hard cost savings of 20x its salary, and as such are constantly shown appreciation by the business.

After major pushes are successful the team frequently goes to see the latest movie releases. We spend several lunch hours a week playing board games like Settlers of Catan.

We are a Non-Software Company.


Of course I run the team, so I have a lot of say in the culture which was paid for by sweat, blood, and results. ;)

I've worked for both, and I've been much happier in non-technical shops and smaller companies, because I get to be a jack of many trades and have earned the right to be involved in top level decisions.

Eric