| Here's what I do: (1) Write code that in house devs could not write. Usually integrations for multiple technology sets, including things that I can teach myself that others would need training for, and otherwise complicated pieces that might otherwise be neglected. Usually after I deliver an "app" (I usually try to stick to a self-contained deliverable), I participate in training the in house devs to maintain it (assuming that it needs to be changed). (2) In my limited experience very few companies that have "bad" code in house recognize that their code is bad, so refactoring / optimizing / architecting is usually neglected. That said, I try to get in on the architecting side -- make sure good design principles are adhered to. I try never to re-write other people's code. I'm flush with work and us. bill out approximately 25-30k per month and am always looking for subs to handle things that I can't (contact me if interested). There are, of course, taxes that hit me then and I don't particularly like the work that I do so try to take longish vacations to work on projects of interest, but still I'm easily making upwards of 200k as a developer. But then again, hackers might think of me (quite legitimately) as the trash collector of developers, mucking about in enterprise frameworks that no legit hacker would want to write code in. I guess that's why I'm paid so much... Basically the trick is getting out w/ one big customer, letting that take up 70% of your time, working in subs on things that you can't handle yourself (but this may be difficult, none of my subs make less than $100 / hr), pursuing other projects that get you recognition (open source is good), actively contributing to the community, and then, unfortunately for many developers, networking. But mostly I try to let my code network for me... |