As a white, midwestern software engineer, it's easy to live my life day to day without ever leaving my little bubble. What are some ways that I can apply my skills to help the under-priviliged?
Leave your bubble.<p>There is almost certainly some volunteer group in your area that could use an extra pair of hands. You might be tempted early on to offer suggestions to improve their efforts through better software; don't. Instead, just watch, ask, listen, and learn. Once you've got enough experience to be confident that you understand end-to-end how everything works in whatever group you volunteer for, you'll probably know the right place to apply your skills as a developer (which very well may just consist of, "um, you need automated backups").<p>Keep in mind that their priorities are different from yours. Things that you would probably consider essential or best practices are, for them, distractions and nuisances and costs to which they're super sensitive: updates, security, anything that's new and requires effort to learn.<p>Software developers tend to see themselves as "systems thinkers", and think they can always improve any given thing by swooping in and applying some new software to it. That is often not actually the case, but they don't get their hands dirty enough and stick around long enough to realize it.
Almost every nonprofit--especially local nonprofits like food banks, hospice care, shelters, legal aid centers, etc--has technology issues. They don't have enough money to pay for IT of any kind, especially in hyper competitive markets like Silicon Valley, and their tech knowledge would be probably laughable to you. If you showed up unannounced at the offices of one of these nonprofits and offered to help them with any tech issues they've been having (fixing a website, making the printer work, etc) they would be most grateful. Of course it's better to ingratiate yourself to the hardworking teams over there by making yourself part of the community first, you don't want to show up like the messiah who's going to fix all their problems for them. Above comments address this.
I had the same dilemma and eventually teamed up with a few others to start a non-profit technology company, to serve other charities. The industry often gets the edge of commercial tools not built for their needs, or ones that haven’t been updated in years.<p>For example Blackbaud is the market leader in non-profit software, they just launched the cloud version of their CRM product. You literally Citrix into a VM and screen share with a remote machine via your browser. It’s that bad.<p>We’re combatting that. Raisely (raisely.com) is our first product. It gives charities great fundraising tools, for free. This year for every $1 we spend building or supporting Raisely, a charity raises $38. It’s a huge ROI.<p>We can’t get VC funding though, so if engineering is your thing and this sounds appealing - we’d love the help.
You can apply your skills to maximize income and donate resources. I donate ~$25K/year to various animal causes.<p>I second the thought of leaving your bubble because there is more opportunity. I am a former midwesterner, and I live near Seattle now. There are way more opportunities at the coasts then the midwest.
Are you gainfully employed? The best answer might be the simplest, both to describe and execute: cultivate your career and use it to generate funds for people who help the underprivileged as a specialty. The market can put your time to better use than you can helping people directly, and plenty of important public assistance groups are starved for cash.<p>Start donating now. Get into the habit. Ramp up your contributions over time. You'll probably find you give a <i>lot</i> more than you expect you'd be comfortable with.
You can volunteer your skills to work with nonprofits that use technology to accelerate their impact.<p>The most well-known of these tech nonprofits are Mozilla, Khan Academy, Wikipedia. Some have come through YC, like Watsi and SIRUM.<p>At Fast Forward (org that I started, like a YC for nonprofits), we have a listing of some available tech-based volunteer opportunities on our website (<a href="https://www.ffwd.org/tech-nonprofit-jobs/opportunities/?_sft_position_type=volunteer&_sft_position_category=technical" rel="nofollow">https://www.ffwd.org/tech-nonprofit-jobs/opportunities/?_sft...</a>).<p>For example, TalkingPoints (tool for teachers to text parents) is looking for a machine learning advisor. MindRight (text message counseling for kids who have suffered trauma) is looking for a code reviewer.<p>Your software engineering skills are incredibly valuable, and it's hard for nonprofits to find and afford quality developers. Providing those skills can greatly help others.
A couple of things I apply for my own doings as software engineer:<p>- educate aspiring software engineers from other countries online by writing on your blog for free about software engineering topics<p>- in the long term, try to translate the content to other languages (maybe pay someone to do it)<p>- maximize your income and donate money to children's education in other countries, they need to have the chance to learn the English language in the first place to be able to consume all the free educational content and open source projects which can be found online<p>- if you put an educational course online for $99 to educate others about software engineering, think about developing countries where it's not possible to pay the $99 for a 5 hours video course, the price can be adjusted on a country base by something like PPP [0]<p>- [0] <a href="https://github.com/rwieruch/purchasing-power-parity" rel="nofollow">https://github.com/rwieruch/purchasing-power-parity</a>
Before you do anything at all, ensure that you understand the difference between relief, rehabilitation, and development. Know which is needed, when. Two minute video:
<a href="https://vimeo.com/33174427" rel="nofollow">https://vimeo.com/33174427</a><p>As an example I am aiming to use my IT skills to bring development to the island of Haiti in the form of training for internet careers. The islanders are often given food (relief) but experts on the island point out that the biggest need is personal development so that they help themselves climb out of the hole. I’ve spoken with two missionaries to the island who are generally positive about my plan.<p>If you bring your skills and apply them to rehabilitation when development is needed, you can do more harm than good, no matter your intentions. So ensure you know which to apply, when.
Find a religious building near you, they'll certainly have some kind of social service they participate in which could use volunteers.<p>Bonus: They probably could use your software skills as many of them have been operating for years with low-tech shoestring budgets.
If there are schools/libraries near you that run coding clubs you could go and help teach. If there aren't any around, you could help to start one up.<p>I have spent several years helping to organise and run a CoderDojo, and it has been a great way to meet new people, and you don't need a heap of technical people to run one, just one or two who can help with the really hard problems.<p><a href="https://coderdojo.com/" rel="nofollow">https://coderdojo.com/</a>
Leave your bubble.<p>Spend two or three years working in South America, Africa or Asia. Make it a goal to develop genuine friendships with some of your colleagues and neighbors. You'll have no choice but to expand your understanding of the world and your empathy for people whose lives have been very different than your own.
So long as the goal is to use software engineering to help, you run the risk of staying in the bubble. Nobody can eat an app or PaaS. It won't keep anyone out of the rain unless someone has built a roof out in meat space. More intractable is that roofs and happy meals scale linearly. Spinning up 1000 more EC2 instances doesn't address acute demand spikes.<p>These are hard problems. There is a reasonable probability that your professional skills are not all that applicable.However, you are not in poor company. For all that Jimmy Carter can do, every board he nails together makes a difference in some family's lives.<p>Good luck.
Certainly you could contribute financially - and that’d be very American of you (source: am an American). However, you’ll get much more value out of donating your time and contributing “boots on the ground”.<p>A friend and I were talking recently about this tendency to offload the work - a very capitalistic approach (source: am a capitalist) - but you get a different kind of return on investment being present for and aware of the needs of those physically around you. That ROI might be measured in terms of mental health.
Help build "on-ramps" for the under-privileged. If you live near under-privileged communities try to set up paid internships that will actually help to teach these kids and help them, build a professional network. Get in front of these communities and invite them in. Try to get your HR department to rethink some of the standard requirements (Do you really need a college degree? Or even a high school degree?)
As in any aspect of life, leave it to the professionals!<p>If you are good Software Engineer, you'll be making good money and this is what the non-profits need the most: good old hard cash...<p>Find a worthy organization and donate, and spend your free time to better yourself and earn more to donate more...<p>Unless of course you you want to become a volunteer, leave your job and transition...
My coworker has the same characteristics you describe. We work for a startup giving out loans to SMEs who otherwise won't get access to credit in poor parts of Latin America. We both came to work for this company precisely because we wanted to do some good in the world. The past year has been great because of this.
There's health software such as OpenMRS, OpenLMIS, ODK, etc. I've made some limited use of learning systems such as Moodle in low resource environments. Also don't discount expanding what you're "skills" are and consider programs such as Peace Corps (if USA).
This may not be what you're after, but software engineering tends to pay very well. You could donate a percentage of your wage to charities that help those who are less privileged.
If you're employed, ask your employer to arrange unconscious bias training for all staff. Speak out in support of the under-privileged in your workplace.
Indirectly help the under privileged by directly applying your skills to solve problems for those with the deepest pockets and then donating that money.
The median income worldwide is around $10,000 and a third of the world lives on less than $2/day. If you want to help the underprivileged you have to or your money has to leave the US.
Ah, this one is easy!
See, there is X money chasing Y resources.
If you feel that you or your colleagues are having an easy life compared to rest of the world which you should confirm by going to difficult parts of the world, here is a plan for you:<p>Do something so that projects of the company where you work fail. This will offer some competitive advantage to companies elsewhere, probably one from the difficult place? That's the easiest thing you can do.<p>You can donate money but I don't think it works. You gotta teach a man how to fish. If you destroy your and your colleagues' fish, they'll be forced to buy fish from underprivileged.
If in America, your options are very limited and the answer very simple:<p>Use your money, time, voice and vote to support a modern public safety net.<p>Every other avenue is a divergence or distraction or otherwise ineffective.