there is still so much that stands in my wayMy experience is that technology has never stood in my way. It may be inconvenient, but I always find a way to work with it.
The thing that has always been in my way is other people. Always.
For me:
1. A boss who has a clue. Who has actually built software deployed to production at least once. Who understands the customer's business. Who manages things and leads people, not the other way around. Who gives me my assignments, the resources I'll need, and leaves me alone.
2. Project managers who know how to run projects.
3. Business analysts who know how to conduct analysis.
4. The decision to either go agile or not. No more sprints, stand-ups, scrum masters, product owners, retrospectives, etc, etc, etc, unless we do it completely and do it right.
5. Anyone, anywhere who writes something, anything down. No more, "Don't you remember when Sue asked Michael and he got Fred to tell us in that skype?" (My answer is always, "No.")
6. Any environment where I spend 90% of my time programming and 10% on overhead, not the other way around.
7. Authority to go along with my responsibility. I'm tired hitting every deadline and forced to wait weeks (or months!) for Peer Review, Code Review, Design Review, Standards Review, User Acceptance Testing, Integration Testing, Quality Review (against what standard?), Steering Committee approval, Leadership approval, approval from God herself...
8. A minimal acceptable competence level for my teammates, achieved by proper vetting (including tech interviews and tests). Software development is achieved as fast as the weakest link, not the strongest one.
9. No meetings!!! If it isn't written down, it isn't. If it is written down, you probably don't need to meet.
I could go one all day, but I'm late for a meeting. :-(