I'm no longer the idealist I was in college (a few years ago), but I'm also not so much interested in a big paycheck anymore. What's more important is my peace of mind and my free time. If there are lots of hoops put in my way, keeping me from doing a good job, I get frustrated and that really sours things.
Being told, for example, that I couldn't install the DBI module because it's untrusted code and "the customer wouldn't allow it" would mean that an hour's worth of work (writing to the DBI interface) would ballon into a week's worth of reinventing a perfectly good wheel. People don't pay me to push buttons like a monkey, they pay me to make decisions on my own and come up with something that works on time.
If I had to fight just to get the bare essentials necessary to do my job (a free Unix, a handful of Xterms, a web browser, and vim), I wouldn't stick around very long. I'd quadruple my prices, do as much work from home as possible, and show up for about ten minutes to install the software. That's it.
Granted, I don't have a family to support, and I don't live an extravagant lifestyle. If I had babies to feed, I'd be willing to put up with more. But life is too short to regret developing on NT and having to roll my own CGI.pm. They can find some other monkey for that. I'll discuss things and compromise when necessary, but put someone behind me to look over my shoulder and make demands every ten seconds, and he'll find himself doing my job in short order.
Update:Just to clarify a few things (I certainly don't want to mislead anyone, and I don't want to put forth a rebellious attitude):
- I'm not a full-time employee for a single business. I have the freedom to pick and choose what jobs I do anyway. (That's good in some ways, tough in others.)
- I have worked places that required me to toe certain lines. Sometimes they made sense, sometimes they didn't.
- I worked hard in a job I hated long enough to get some experience and to pay off my student loans.
- I'm much more lenient on my volunteer work -- I may not enjoy trying to edit stuff on NT (oh, for a decent shell!) but I've done it recently, for free. There's a big difference between someone offering to pay me money to do what I do and then telling me not to do it, and someone saying "We'd like your help, but we can't pay you." I'm just funny that way.
- I've never worked on anything that requires extreme levels of security and auditing. That's a different world altogether.
- I wasn't talking about working as a *maintainer* on an existing project -- options are greatly reduced there, as they should be.
Caveats in mind, I would recommend that if you're feeling dissatisfied with your job, with the politics, and with management decisions that are at cross purposes to good programming and good technical decisions, take some time (out of your job) to write up a proposal to make the changes you deem necessary. Put it in language your boss can understand -- "This code from the CPAN is written by professional programmers, has been tested by thousands of people already, and would take me a week solid to duplicate half the functionality." Work within the system before running from job to job, looking for the perfect fit. (You won't find one.)
On the other hand, if your boss makes a habit of not listening to you even when you do that, you'd be in a job I wouldn't keep for long.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.