# Why you should get involved

If you have some technical skill and an inclination towards progressive politics, you should definitely consider volunteering some of your skills towards the progressive tech world.

The progressive tech world is a pretty fascinating, and at times even inspiring place to be.

If there's an issue or candidate you care about, this field can be enormously satisfying way to contribute - sometimes surprisingly so. A little bit of technical skill can go a long way, and occasionally you'll discover that a simple script or a humble API call can save hundreds of hours or work, or can help thousands of people vote. That's a wonderful feeling, and when your efforts helped contribute to a margin of victory, it's all the more exciting.

More than that, progressive tech offers you a unique chance to improve your technical skills, and to learn along new dimensions that probably do not come up very often in the for-profit world. Progressive tech tends to exist in a much more constrained world: there is usually less money to go around, and timelines are tighter than in the for-profit world. Working within those constraints makes you a better technologist. After all, it's easy enough to throw money at a technical problem until it goes away. What do you do when that's not an option? Or what do you do when a two-week delay in a project would not just annoy upper management - it could potentially cost you the election? Roughly speaking, your attitude towards technical debt becomes a great deal more mature, and you gain a deeper perspective for what it takes to improve a codebase and technical platform over a period of time.

Progressive tech also lives in a world which is, believe it or not, very political. There's politics at the organizational boundary, of course - that is to say, if you're working for a candidate, then there are people who do and don't want to see your candidate succeed. But there are also politics within the organizational boundary. There are people on staff who want to see the candidate win a certain way, or who want to receive credit for the victory, or who want to make a name for themselves after the election is over.. and so on and so forth. As a result, it's frequently the case that one technical solution or another simply has to be discarded, because it's unfeasible within the organization for political reasons. Politics dictates the kind of code we write and the kind of technical systems we create in the world of progressive tech. That is particularly and obviously true within campaigns, but it's also true of any other organization in the progressive tech world - and indeed, in the world at large. Often we like to think of technical problems as somehow divorced from corporate politics, as though there is a kind of "pure" realm of technical solutions which can be implemented in a manner agnostic to organizational politics. That's rarely a successful path, however: politics can and often will get in the way of technical designs, whether you're working in the corporate sector or the public sector. What's nice about progressive tech is that these dynamics are relatively obvious, and as a result you gain a lot of the "soft skills" needed to work within them. To be successful in progressive tech, you need to learn to advocate for and "sell" the solutions you devise - and in doing so, you learn how to be successful in the for-profit world as well.
