Why technologists don't want to work at a government agency
ben.balter.com
ben.balter.com
Also, some of these are really stretching:
>> 3. You tether developers to their desk
Not having Wifi is a dealbreaker? I don't know about the author, but i became an engineer because i wanted to build things. If the problem is interesting, does it really matter if you can't go 'chill in the lobby' with your laptop?
>> 10. New technologies are guilty until proven innocent
When managing anything that can vitally affect many people it's important to not just jump on the next bandwagon. This is engineering 101.
>> 13. Speaking at conferences is tightly controlled
What? Are you talking about OPSEC procedures or travel limitations or what exactly?
>> 16. You measure your hiring process in months
Your freaky fast startup is what...5..100 employees? Come on, an agency (while can be small) is part of something much much larger. Also many agencies require a full background check and/or security clearance.
>> 18. Recruitment is unheard of
Just because you're not getting spam from NASA or your local gov about an 'exciting opportunity to change the world' doesn't mean agencies don't attend job fair, offer scholarships, and recruit talent.
>> 19. You block half the internet - I honestly don’t know how I’d do my job without social networks like Twitter.
Really? "It’s not unsurprising that many government employees are out of the loop", like we can't or won't read/browse/learn things on our own time. Get off your petastle.
>> 13. Speaking at conferences is tightly controlled
> What? Are you talking about OPSEC procedures or travel limitations or what exactly?
I spent a good deal of time working for the US Feds and it wasn't just travel limitations. Due to the fact that we couldn't accept "gifts," I wasn't able to accept the speaker package (flight+hotel) that was offered to every speaker so my supervisor could make the budget argument.
>> 16. You measure your hiring process in months
> Your freaky fast startup is what...5..100 employees? Come on, an agency (while can be small) is part of something much much larger. Also many agencies require a full background check and/or security clearance.
This is a straw man. Many agencies require a full background check for no particular reason. Further, a fingerprint check with IAFIS and even a National Agency Check can be done in a matter of days.
Regardless, to hire people in a field in demand, months is ridiculous. And it's not just the length of the process but the lack of information. The last time I was working for the Feds, I applied for a new position and waited ~30 days until they acknowledged the application, another ~30 days for the first call, a couple weeks for the first interview, and then another ~30 days for the followup. In the meantime, I joined a company and was deep into my first project.
Especially on 19, though, I feel their pain. If the .gov feels it's important to protect developers from their own curiosity and browsing, fat fucking chance they'll retain anyone interesting.
It's harder to secure but there are ways.
Get off your petastle.
Petastle, eh? If only you had access to dictionary dot com.The bit about integration, testing, Jenkins et al. surprised me, because in my (maybe not very vast) experience, small companies and startups are much less likely to test everything and just try to release as fast as possible. And I've had the same impression about process. Maybe I was just unlucky.
This guy has clearly never worked on anything but the most trivial of websites, he has no idea...
> You force developers to use tools designed for lawyers
Nope, we used whatever we wanted to.
> You distrust your employees
Nope, most people used OS X and had full control over their machine
> You tether developers to their desk
Nope, there is wifi throughout the building. I actually worked from home a lot, eventually only coming in for sprint planning and retros
> You prefer government-specific service providers
Nope, we deploy on AWS in prod, and spin up Heroku apps for sharing prototypes
> Temporary integration
Nope, we run CI on every branch, pull requests are not merged until green.
> Sparse delivery
Nope, Continuous delivery. Master is always deployable. We deploy whenever we want.
> You still see waterfall as a viable option
Nope
> You don’t place process on a pedestal
Nope, use all best practise you'd expect in any modern software shop
> You erect a moat between developers and servers
Nope, our releases our deployed by CI but we can SSH into any box (via VPN and jump boxes)
> New technologies are guilty until proven innocent
Nope, use what you want as long as you can justify it, i.e. building a service in brainfuck won't fly
> You use open source as a verb
Nope, all development done in the open and service source code licensed under MIT
> Working in the open is a novelty, not a best practice
Nope, see above. We're spending taxpayer money, the software belongs to the taxpayer and we want to be fully accountable.
> Speaking at conferences is tightly controlled
Nope
> Geeks are the bottom of your food chain
Nope. Quite frankly the opposite. We have the best equipment in the department, are amongst the best paid, and wear whatever we want to the office where all other stuff seem to be required to wear business dress.
> Culture only happens outside of your working hours
Nope. As we are spending public money we can hardly have an open bar but we do our best
> You measure your hiring process in months
Nope, the slowest part of the hiring process is having a background check, which takes a couple of weeks
> Onboarding is an afterthought
Nope, you're up and running with all your brand new kit and logins on day 1
> Recruitment is unheard of
Nope, but the department has largely grown through referrals
> You block half the internet
Nope, nothing is blocked whatsoever
Unfortunately the funding to JISC was heavily cut a few years back and the Dev8D community that had developed (made up of developers at many institutions) lost its momentum to budget cuts and bureaucracy.