views:

409

answers:

12

As a developer, have you found that some kinds of companies or industries tend to give you more interesting projects, and more room for creative expression, as opposed to others?

I guess it depends on the kind of development. Some development tasks involve very little creativity, and seem to be more focussed on configuration, change requests, maintenance, testing, etc.

However others seem to allow for more "self-expression" - that is - the developer is given a fairly general problem, and is allowed to decide how they want to tackle it, what tools, algorithms, etc they want to use.

+5  A: 

Jobs at startups always seem to offer a lot of freedom/creativity(no matter what the industry).... of course they offer lower wages too.

Element
Around Silicon Valley, they often offer higher wages. Or at least they did in 2007-2008, not sure what's going on now.
mikeh
+8  A: 

I think the industry matters, but only a little.

Having room for creativity is a management decision and style more than an industry thing, IMO. I've worked in industries that are not known for creativity (the "worst" was working for a fortune 500 retail chain), and had huge amounts of flexibility and creativity. I believe, in some ways, I had more fun in that job "playing around" with trying to figure out different approaches to tasks, and more freedom than many other jobs that I've had.

That being said, the industry probably does have some impact. I believe industries where you are working on software for a more professional audience have the potential to allow more self expression and self drive, but that may very well be my bias, since I run a scientific software company. I task my developers and give them a lot of freedom in how they implement specific projects - the tasks are often difficult and non-obvious, and part of their job, in how I see it, is coming up with an approach and pitching it to the team. On the same token, as you get into more difficult problems, you often get stricter requirements for testing and validation, so there is a little bit of stifling later in the projects.

Reed Copsey
Spot on about the big retail chains...
Chris
+4  A: 

For maximum self-expression, I'd say self-employment or maybe consulting. But beware, they are also very challenging.

BenMaddox
+3  A: 

If you look at the companies that "everybody" wants to work for - the big tech companies like Google, Microsoft, etc., and the little tech companies like Fog Creek, and startups - you won't find that they are the highest paid jobs. More often, they're the ones that give you the most room for creativity and personal growth.

Evaluating a given company for whether its developers have latitude in creativity is very difficult, and you're probably best served by talking to as many developers in person as possible. But finding the jobs that give developers the most room is easy - just see what companies float to the top of discussions on slashdot, programming.reddit and stackoverflow.

Kai
A: 

I think the industry has a fair bit to do with the room for creativity because i used to work for a Bank like company (mainly mortgages) and there was very little room as most of their applications had set architecture that we had to work under.

But working for a Web Development company you get a fair bit more, as the clients come to you with the idea (for most of the time, a new project) and you are the one who figures out how to solve the problem etc.

d1k_is
+1  A: 

In general I'd have to say the software industry. Any company where the software they are developing IS the core business function will generally be much more software friendly. Companies where software development is merely a side effect of a core business function, are more likely to be enthusiastic about their core functions and less about software. As a result they're less likely to understand what it is that will make developers happy which means there will likely be less room for creativity.

lomaxx
A: 

Startups .... i loved the freedom and creativity at the startup i worked for.... too bad it closed down :(

Rick J
+1  A: 

You will get the most freedom in developing your software in direct proportion to how directly the software itself affects the bottom line of your company.

Work for a startup, with no real user base yet? Whatever will fly!

Work for Google? You'll get to do a lot of working on your own, as long as it's in python, java, or C.

Working for a company that makes hardware with cool firmware inside? You will probably have your way towards the implementation, but the specifications will probably be designed by the hardware folks.

Working for a bank, where the software isn't the main focus of the company? Get ready to implement from broadly defined specifications!

Robert P
A: 

The industry your in, in my experience, is cricuial to the mind set of the employees. For instance entertainment companies, are fun, banks are pretty boring, insurance is worse, local government uses trailing technology, media tend to use new technology.

To use an analogy, if you're a farmer you think of thinks in terms of crops and tractors, that new machine's going to cost 100acres of wheat. Bankers think only of money, very little about what the money acheives it's the means and the end, entertainment companies exist to entertain, they're still profitable (hopefully) but loads more fun.

MrTelly
+2  A: 

I think peoples interpretations of creativity in software development differs greatly, so its always a matter of opinion (some people see it at as having fun, others see it as having freedom to choose interesting/alternative technologies, others see at as having time/resources to experiment and innovate... etc. etc.)

I've worked in start-ups as well as large and small companies, each had the opportunities for creativity, but in different aspects of the development process - some allowed for creative under the hood solutions to tricky or repetitive problems but with very preconceived expectations with regards to UI (this is particularly so in local and central government) - others allowed for creative UI/UX opportunities, but had little love for the behind the scenes code being crafted (particularly common in the content-management heavy web space, where very time-constrained and competitive contracts are in place) and start-ups provide opportunities for Innovative solutions to business problems, but don't always require that much innovation when it comes to code (in fact many start-ups I've worked for suffer from trying to achieve too much technically before actually having a suitable business model / customer base ).

In all cases I've found the Morale of the entire team (not just the developers) and schedules with enough allowances for experimentation/creativity to work best. Both of these can to some degree be nurtured by the development team themselves.

I notice a number of people suggesting start-ups being a good environment for creativity - and I would agree with that statement, albeit with one caveat that often they aren't outcome focused / constrained enough, creating things without customers or dog-fooding the product your developing (if appropriate) can lead to an eventual creativity slump - as solving software problems creatively is often easier when there are some constraints in place as a guide (time, budget or technical).

I have seen some start-ups flounder just trying to select a suitable/interesting technology stack (or contemplating creating their own from the ground up) rather then focusing on actually solving the business problem they set out too.

Personally my favourite space to work in creatively is running a company and developing your own shrink wrapped products for sale, it provides a good mix of opportunities for creativity with some constraints (that I like because it helps me focus on developing an appropriate solution) - also I found creative and well crafted solutions normally have more merit when they apply to multiple customers.

My 2ø worth.

Bittercoder
+1  A: 

Quoted from another answer:

Companies where software development is merely a side effect of a core business function, are more likely to be enthusiastic about their core functions and less about software. As a result they're less likely to understand what it is that will make developers happy which means there will likely be less room for creativity.

My experience is the exact opposite. I have found in companies where software is not the core business I have much more freedom to choose deployment platforms and technologies. Their main concern is 'deliver this functionality' and they dont care how it happens.

*Note this does not apply to very large companies who are likely to have a large IT department and well documented software standards.

Alex
A: 

There is another side to answer here and that is in which of a few different roles is the job itself:

1) Technology vendor - This would be where you are making the product which could be hardware or software to my mind, in a product development or management role. There may be some creativity if the company is young and still trying to find some big idea that will generate lots of sales. Microsoft, SAP, and Oracle are obvious examples here.

2) Technology consulting vendor a.k.a. "System Integrators" - This is where what the company does is more of a service than a product, per se. A typical example here is taking some big ERP,CMS, SSO or CRM system and do the customization for how a specific company will use that software package. These projects can take years and be long and not require that much creativity in comparison to the other roles as there is only so many different things one can do with the software and be within budget in terms of time and money.

3) IT department of a company - To my mind this is a different realm than the others as this gets to be where a company's in-house development is done and may work with some people from the second role in getting that implementation done. Here the projects can vary from minor changes to existing systems to putting in something new that can be fun and exciting to some extent.

If someone is in that third role, their creativity may be more focused on how put out fires in the office than creating some new architecture or code that may be more common in the other roles. So there is a part of how to interpret creativity and freedom in terms of schedules that can also be important here I think.

JB King