Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: How to give back as a software engineer?
51 points by lookingtohalp on Nov 3, 2022 | hide | past | favorite | 42 comments
Hi all! I have come upon good financial fortune recently and took a step back from day-to-day work as a software engineer. After a few months of downtime, I'm now ready to jump back into work, but given I no longer have any financial stress I'd like to focus on ways to use my skills to give back to the community. I've been writing startup software for 10+ years, have co-founded a company and exited.

What does HN think are some good ways to give back? Here are some avenues I've explored but have come up dry:

* Teaching: I'd love to teach programming to high schoolers, but most positions require some post-grad/PhD, which I do not have.

* Non-profit / civic work: I'd love to work with USDS, 18F, or something like that, but there don't seem to be as many open positions and USDS requires folks to be on-site in DC (not possible for me).

* Mentorship programs: I've done a few mentorship programs in the past, but is very high touch and infrequent - I'd like to do something more hands-on.

Thanks HN!



USDS and 18F are great but there’s also an increasing amount of state and city “digital service” organizations you could look into, which have differing policies regarding remote work. Off the top of my head, I know Colorado and California both have them, as well as some larger cities such as San Francisco, NYC, and Austin. You can probably find one where you live.

https://oit.colorado.gov/colorado-digital-service

https://innovation.ca.gov/

https://digitalservices.sfgov.org/joinus/

https://www.austintexas.gov/department/about-innovation-offi...

https://www.nyc.gov/content/oti/pages/

On the non-gov side, there’s Code for America. They oversee a network of local “brigades” of volunteers working on all sorts of projects, such as automated marijuana crime expungement in places where it has been legalized.

https://codeforamerica.org/programs/criminal-justice/automat...

https://brigade.codeforamerica.org/

They also run a major conference of civic tech orgs every year, bringing together both private and public sector groups.

https://summit.codeforamerica.org/

Outside of the US, there are many other similar groups, such as Code for Africa, Code for Germany, etc.

https://codeforall.org/our-global-network/


@pimlottc, I wonder if you have any spare/used/old ThinkPad/laptop that you can give to me for free? It will be life changing for me!

I'm currently really struggling in life (I barely eat once a day at the moment) but I'm really passionate about Linux/free software. So, a free laptop could really help me get local jobs (sysadmin or web developer for SMEs), put food on the table, & pay rent! Thank you!


What are you trying to achieve, or what do you mean by "give back"? Which is more important, helping people or sticking with your SE skills? There isn't a wrong answer- I sincerely can't tell your priorities, goals, etc.

Who do you want help is the first question, then figure out how based on their needs. Who is in "the community" you want to give back to? I think one of the reasons you have come up dry is because there isn't a true need in the communities you are looking at.

I know this sounds critical, which it is, but hopefully not too critical. SE is fluff, those that desperately need help, they don't need code. People need shelter, food, water, health, safety- the rest is gravy. Money, which you have, can provide these basic needs. Donate money to charities that specialize in providing these things. Volunteer with the charities of your choice. Convert your skills and experience as a SE into cash (a placeholder for value), let the charities use your value to help people. It doesn't sound as satisfying or glamorous as teaching/mentoring but it will probably have a much greater impact. If you can make $300 per hour do that and hire 10 teachers/tutors instead of teaching yourself.

Other thoughts

-your money gives you time, time for you to volunteer and help

-Empower small local business, true mom and pops (build free websites, inventory tracking software, etc.)

-Software/sites for local charities (maybe as simple as etting up square donations on their site)

-clean up used laptops and give them away

-create scholarships


“I know this sounds critical, which it is” You have no reason to be critical at all. The author is expressing a desire to help people. They are here because they are unclear how to do so.

That being said, I actually really agree with what you’re saying. (So if your tone was to get strangers on the internet to read a valid point, you succeeded with me at least.) To summarize the greatest takeaway for me: technically the most efficient way to give back (definitely not glamorous) is probably donating further SE income.


> clean up used laptops and give them away

This will be life changing for me! @bensonn do you know how can I get a free laptop? Thank you!

I'm currently really struggling in life (I barely eat once a day at the moment) but I'm really passionate about Linux/free software. So, a free laptop could really help me get local jobs (sysadmin or web developer for SMEs), put food on the table, & pay rent!


One form of charity does not make another less valid. There exist myriad good causes in the world an individual can choose to contribute towards.


>One form of charity does not make another less valid

People keep repeating this but it is Patently Not True. The distinction lies in the Needs vs. Wants dichotomy.


One of the things I enjoy is doing resume reviews for individuals who are actively trying to get out of difficult situations (recovering addicts, ex convicts, etc) and improve their lives. Usually most of them actually have really solid resumes with professional experience, they just fell on some hard times and ended up in a bad place. It incredibly fulfilling to me as you can easily see the impact you make on others lives. Usually you can find opportunities like this at hard reduction centers.


FIRST Robotics. Every team is run a little bit differently, but every team I've come across is always looking for more mentors. https://www.firstinspires.org/robotics/frc

A year ago I got involved with my local robotics team and began mentoring them as a way to give back. It's been very fulfilling, especially since the team has shown significant growth since then (3 students with 1 mentor => 12+ students with ~6 mentors).


I teach a robotics class and we use the Legos and it was super fufilling indeed (too bad mindstorms is being discontinued by the way)


If you are interested in teaching and are based in the US, the TEALs program by Microsoft Philanthropies (https://www.microsoft.com/en-us/teals) is an option to consider. I volunteered with them for a few years teaching AP Computer Science and I enjoyed it.


This looks really excellent and right up my alley. I'm going to apply now. If there are any folks you think would be worth connecting to directly, please let me know!


I'm teaching a TEALs class at the moment, my first time, and can confirm it's a great experience. I have 1 or 2 classes a week, each about an hour and a half, and I do maybe another hour of prep before each class. The curriculum is all provided, so you just need to get familiar with it, not write it yourself. I'd be happy to answer more questions about it if you'd like! In my experience they were super responsive, so if you've already applied you'll probably be hearing back from a rep soon.


I wanted to add that I know of TEALs volunteers who went on to become full-time high school computer science teachers without PhDs, etc.


I think there’s something to be said for the open source community here. Sure, homeless/hungry people around the world need help more that software engineers. That being said, contributing to an open source project you’re passionate about may actually add as much or more utility to the world. Helping maintain eMacs, for example, helps a lot of people a little bit eqch. If you were to carry eMacs into a multi-threaded paradigm, that could bring a lot of value to the world. This hinges on the idea that you enjoy programming and you’re good at it. You’re able to create value in a way through programming that you simply aren’t able to do just by donating or volunteering at the local homeless shelter.


Open source: Find some topics that you’re interested in - Astronomy? Biology? Data processing? Distributed computing? Compilers? Geology? And then find the libraries and common software that this field uses, head to GitHub and start fixing issues on different repos until you find a community you vibe with.

Discord : there’s heaps of people wanting help on discord, I am currently mentoring approx 10 people who just asked for help one day and we got chatting, some I’ve been mentoring for > 1 year now. I never ask for money or anything the joy of giving back is enough - and they always show me cool things too!

If you want you can email me on alain@atomictessellator.com and I’ll send you invites to 20 different tech discord channels to get you started


@malux85 I wonder if you have any spare/used/old thinkpad/laptop that you can give to me for free? It will be life changing for me!

I'm currently really struggling in life (I barely eat once a day at the moment) but I'm really passionate about Linux/free software. So, a free laptop could really help me get local jobs (sysadmin or web developer for SMEs), put food on the table, & pay rent! Thank you!


I try to join online communities (discord, these days), and be helpful and welcoming to newcomers. This often leads to me offering to pair program or do a zoom call, and provide some perspective on either my career, a specific technology, or just some concrete code advice.

With zoom, it's possible to do this with people all around the globe, which is extremely gratifying.

Since I'm at relative liberty to share parts of what I'm working on, I'll often show what my day to day looks like, which can remove a lot of fear to beginners and junior professionals. There are pages like coding coach, although I don't tend to get that much engagement on there (not that I'm actively trying to) compare to chat rooms.


Fund research into: 1) State-ful GUI markup standard. HTML/CSS/DOM is a poor fit for CRUD/GUI. 2) "Dynamic Relational" database. Dynamism is a desired feature of databases as the "NoSql" growth shows, but one has to toss all their RDBMS knowledge to get it. let's instead put dynamism into RDBMS rather than throw out the relational baby with the static bathwater. 3) R&D into "table oriented programming" to free us from code file trees and from using code to store bunches of UI attributes & navigation paths.


Please be my mentor. I'm 31, from a third world country living in France, studying full-time (self-made bootcamp plan: https://github.com/woadray/bootcamp/blob/main/README.md), wanting to break into software development. We can chat whenever you're free, my email is my bio.



Private schools usually don't require any education experience nor higher degree (strange, isn't it?). I've been head hunted by NYC private school to teach, and a friend at a WA private school has a BA in the arts.


Private high schools tend to have more flexibility with degree requirements than public schools. Many public schools expect teachers to have master’s degrees in education, and while private schools look for a BA in the subject area or significant work experience. You could also look into “alternative certification” programs (some states have these; some states don’t) if you’re interested in starting as a substitute teacher.

There are also programs that will place you with a certified teacher to enrich a HS computer science class. TEALS is the best known of these but there are probably others.


Hi @lookingtohalp, is there a way to contact you? email perhaps? thank you!

I'm currently really struggling in life (I barely eat once a day at the moment) but I'm really passionate about Linux/free software. So, it will be cool if I can contact you & talk about my situation in details. Your help might be life changing for me!

lookingtohalp, I hope you see this post & reply to it! thank you!


Educational material: Despite all the educational material available online (e.g., YouTube), channels with good educational material in the area of software engineering are far and between.


I've had the same question over the entire span of my career. "Giving back" is difficult if we want to apply our skills.

Given your situation, though, you might consider a trip back to school to pick up a teaching certificate. There is a shortage of teachers and I imagine you could leverage a CS degree (I'm assuming that's what you have) and a teaching certificate into a nice job in a high school. I know you don't _need_ a job but, with 3+ months off per year, it wouldn't hurt.


Don't overthink it! If you have any interest in teaching and have a bachelor's degree already you are most likely qualified to start immediately in probably most public districts in most US states, as long as you are filling a hard to fill position such as a math teaching position. Those are incredibly understaffed right now. Schools with multiple vacancies staying unfilled for years are not unheard of.

And if you want to get your feet wet just to see if you have interest in a greater commitment, they are always looking for subs. You can start out as a daily sub (just a babysitter essentially) and will very quickly be able to volunteer for a long term sub math position as soon as they see you're a dependable adult at all, and check the box of having a bachelors in a STEM field.


HS teachers for cs don't have grad school requirements, at least in the us. Also in the US there is a great shortage of experienced people for teaching jobs in the schools that are tech oriented. They can give you a temporary permission to teach, even if you don't have your teaching credential. If you have at least a BS/BA in some field with exp in the area, they'd probably take you in a second. They also do this for math and various science related fields.


I'm looking for someone to help me start a new trade school for developers that can accept younger students before they have to move out of the house.

I'm a developer myself in the middle of building Facet, a hiring platform for developers. The plan is to allocate a percentage of our revenue to fund the school and also allow companies and senior developers to sponsor + mentor underprivileged students as a way to give back.

If you are interested hit me up at robert@facet.net


My plan was to develop a search engine and then donate all our profits to other non-profit organizations and charities with a proven track-record. Unfortunately when things started to finally take off then Google shut it down without warning or communication. I still think the idea is very solid and if anybody with connections at Google AdSense or Microsoft Advertising would like to team up then please reach out to me :)


You can give people software that's detached from the usual profit motive. This opens up a whole new range of problems that people won't tackle because the money isn't there.

Don't think big, think small. Think of problems that are ignored because the scale doesn't satisfy venture capital's requirements.


The best thing you can do is to donate some of your money to good causes. You can check out Effective Altruism or Giving What We Can


> Teaching: I'd love to teach programming to high schoolers, but most positions require some post-grad/PhD, which I do not have.

A lot of teaching happens outside of schools. You do not need PhD to teach a group of homeschoolers, or an afternoon hobby club.

You could also record yourself while you teach, and make a YouTube channel.


There's GiveCamp (https://givecamp.org/), which is like a hackathon where you make websites for non-profits. I participated in one and it was pretty fun.


I would not give up on the government route. The Defense Digital Service (DDS) has remote positions. Other federal agencies (e.g. CISA) hire in a variety of geographies.

Additionally, there are a variety of positions available at the city, county, and state levels.


Assuming you’re a good one, teach kids how computers actually work. The push towards higher and higher levels of abstraction has made even basic things seem like voodoo under the hood to anyone who grew up post-windows 95.


Could you use your programming skills for something to do with making carbon capture, and/or renewable energy cheaper and easier , even if its unpaid? Could save a lot of lives that way.


Become a lead angel investor. Contribute to open source software. Those are probably the highest leverage options.


Money itself is surprisingly effective.


Teach them how to start companies that lead to successful exits.


Make things work.


Jotain suomessa ?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: