Skip to main content
20 answers
23
Updated 2590 views

What volunteering positions are great in order to become a Software Engineer?

I am a Junior at Aviation High School, the past 2 weeks I spend my time trying to find remote volunteering roles. Some of them included WordPress Mentor, Data Entry and Remote Student Mentor/Tutor. Are they any other volunteering positions that could help land my first job at a tech startup or tech company. I am passionate about programming and creating websites. What are great volunteering websites for tech.
#tech #engineer #software #volunteer #internship #technology #computer

Thank you comment icon Hi George, Gurpreet here (Community Manager at CareerVillage). I have removed your LinkedIn account as we do not allow students or professionals to add contact information. I hope you understand! Gurpreet Lally, Admin

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

23

20 answers


7
Updated
Share a link to this answer
Share a link to this answer

Herman’s Answer

Great question, George! It's awesome to see that you're already thinking about this.

To get to what I believe is the heart of your question, there are two things that you want to be doing to set you up for your first software internships:

1) Develop the appropriate skills

2) Apply those skills in a practical setting

Your question is about #2, but I'm going to comment briefly on #1 as well.

The beauty of software development is that there is practically no barrier of entry for getting started with practicing skills. The best thing you can do from the comfort of your own home is dedicate some time to learning a language / framework and then working on a "side project". This is a personal project that practically solves a problem. It doesn't have to be on a big scale at all! Doing side projects shows employers the following:

a) You can apply the skills you've learned

b) You can make quality software that works

c) You can formulate a practical problem and then solve it

d) You have the initiative to work independently

For example, I have friends who have made Google Chrome extensions as side projects. For example, it could be an extension that tracks how much time you spend on different websites. There are many resources online that you can leverage to learn languages / frameworks, including LinkedIn Learning (currently with some free courses during COVID-19), Coursera, Udemy, Code Academy, etc.! Once you learn a language or tool, you should try to apply it to a project. When you say that you know X on your resume, employers like to see that you've actually *used it* for something. Python is a great language for beginners, as it's extremely common and not difficult to penetrate initially. For full stack development, learning Javascript and HTML / CSS will also enable you to make complete web applications.

In addition to your own personal projects, another common avenue for skills development is contributing to open source projects. There are many ongoing projects that rely on support from volunteers, and anyone can contribute. Open source is a big thing in the software engineering realm and it always looks good if you've made personal contributions to open source software.

Once you have your own projects under your belt, it'll be much easier to volunteer at places that need your skills, as you'll be able to demonstrate that you know what you're doing. Some examples of places you can volunteer:

a) A prof's lab at your school where they need programming skills

b) A student club - many hire web developers to make their club website

c) Coding clubs at university

d) Reaching out to non-profits or small businesses and offering software help on a pro-bono basis
Thank you comment icon As an aspiring software engineer, I definitely second this. It was really refreshing to see a roadmap I (and many others) could use to gain experience at a young age! Thank you for your efforts Herman, I'm very thankful for volunteers to help out students like me! Aun
7
6
Updated
Share a link to this answer
Share a link to this answer

Jonathan’s Answer

I think contributing to an open source project and getting your feet wet with real software engineering would be extremely helpful!
6
2
Updated
Share a link to this answer
Share a link to this answer

Zach’s Answer

I haven't read to see if somebody has already mentioned this, but a great way to get involved and build practical experience is to contribute to open source projects. You can find a whole bunch of open source projects online and can choose to contribute in massive ways or small ways.
2
1
Updated
Share a link to this answer
Share a link to this answer

Michael’s Answer

In high school and college, there may be student organizations that need website help. For example, maybe your student newspaper is trying to create a website for online articles... Or a volunteering-based club (like Key Club) could use a website to be the source of truth for club/volunteer events.

Personally, I've found it difficult to find development volunteer roles at non-profits, as well as finding open source projects to work on... But I have found success with doing dev work for student organizations. I worked on a website for a student-run newspaper and learned a lot about web development/design and server maintenance!
1
1
Updated
Share a link to this answer
Share a link to this answer

Jim’s Answer

What I recommend is checking out some Meetup groups (meetup.com). There are many technology focused events in the New York City area (all virtual at the moment) where you can meet a ton of people. Let people know you are interested in some 'real world' experience, helping with a project. What you are asking for in return is using this experience as something you can reference on your resume or college application.
1
1
Updated
Share a link to this answer
Share a link to this answer

Purva’s Answer

Hi George,

First off it is awesome that you are just a junior and exploring so many opportunities already. Kudos to that ! :)

I feel you should Tick off some pointers/ pre req before you approach getting into a technical internship :

1. Get your hands dirty in learning a language ( I would recommend Object oriented programming languages like Java, C, C++)
PS: This is the key to crack any of your tech interviews.
I learnt a lot of coding basics from : https://www.khanacademy.org , Udemy.com and coursera.com

2. Practice solving some problems : This will help you gain deeper knowledge of concepts and have a hands on on how interviews might actually
work.
Refer leetcode, https://www.geeksforgeeks.org

3. Set up a mock interview with a friend / https://interviewing.io


If you already have the above 3 steps ticked off, that great you are quite ready for some internship opportunities.

There are huge amount of Internship opportunities at : https://angel.co . A lot of startups look for volunteering opportunities, so that would be a good target area.
Using GitHub to start contributing to open source would also be good idea to put yourself out there.

Good luck on your search!
1
1
Updated
Share a link to this answer
Share a link to this answer

Tudor’s Answer

Hi George,

Great question! I recommend further pursuing your interests, by applying your knowledge locally. If you have a passion for software engineering, you can start with something as simple as involving yourself in previous classes you have taken. A great example is becoming a teaching assistant for one of your computer science classes going forward.

I notice that you also have an interest in developing websites, and so I would recommend reaching out to local organizations such as NGO's or companies, and determine if you can either volunteer some of your time to work on their platforms, or further polish your skills and start working on projects as a freelancer.

I hope this helps, please reach out if you have any further questions.

Tudor
1
1
Updated
Share a link to this answer
Share a link to this answer

Muhammad’s Answer

Look into nonprofits organizations and HS hackaton. Linkedin is also a great resource.
1
1
Updated
Share a link to this answer
Share a link to this answer

Dexter’s Answer

Hi George,

I like volunteering through catchafire.org. You can easily find remote volunteering opportunities based on the skills you want to practice without fuss.

As for what skills to volunteer, I would like to just second what Herman Chandi stated in his answer. :)
--
Dexter
1
1
Updated
Share a link to this answer
Share a link to this answer

Philip’s Answer

Hi George, there are already some great answers above but I would also suggest seeking out volunteer opportunities at non-profit organizations that have a need for technology focused projects to be completed. I know that if you have a LinkedIn account then you could also specify an interest in volunteer opportunities and organizations may contact you directly. I hope this helps and I wish you all the best in your future endeavors.
1
1
Updated
Share a link to this answer
Share a link to this answer

kaili’s Answer

Finding an internship in an Internet company and participating in some development work can help you better understand the Internet industry in advance.
1
0
Updated
Share a link to this answer
Share a link to this answer

Cicely’s Answer

I use a volunteer website called handson and one of the opportunities I did recently was Tech with Seniors. It was at an assisted living facility and you assisted seniors with their computers, cellphones, tablets and other electronics so they could use them for improving their quality of life. Super cool experience that I think would look great on a resume.
0
0
Updated
Share a link to this answer
Share a link to this answer

Sumit’s Answer

1. Gain mastery on algorithms and data structures, and help others by doing lessons or mock interviews.
2. Participate in open source community, whether or not you actually write code. For instance manage bug list, review code etc.
3. Write blogs
4. Mentor younger kids about STEM courses
4. Do as many hackathons as you can, and network with other participants, mentors, and judges.
0
0
Updated
Share a link to this answer
Share a link to this answer

Zhe’s Answer

You can try to do some exercises on leetcode, practice your programming skills. Look for opportunities for hackathons or even internship with no pay. But if you cannot find an internship related to programming, any internship opportunities will help you to get a software engineer job in the future. You can still learn how to work as a team, how to communicate with people, how to collaborate with your team members.
0
0
Updated
Share a link to this answer
Share a link to this answer

Ramesh’s Answer

Your passion is programming and creating websites. So, go and explore LinkedIn and connect with recruiters with your resume and try to focus on startup companies so you can get a faster pace environment and you can also explore multiple areas within your area of interest.



0
0
Updated
Share a link to this answer
Share a link to this answer

Jakub’s Answer

Everyone has great answers to this question, but my journey was a bit different.

When I first started my CS degree, I looked at my university list of labs and emailed the Professors who ran those that interested me.
It went along the lines of, "I don't really know how to code yet, but I'm really interested in what you do and learning about it, are you willing to mentor me?" A few labs said no, a few never answered, but one did! The (https://www.evl.uic.edu/research) Electronic Visualization Laboratory was where I ended up, which was a really cool place! They ended up not only having me as a volunteer but they ended up paying me for running a motion capture studio while I learned to program.

It was an amazing opportunity and I urge you to not underestimate taking a chance and reaching out (respectfully) to places that are doing work that you're interested in. The power of honesty and a simple e-mail can sometimes change the course of your career for the better.
0
0
Updated
Share a link to this answer
Share a link to this answer

sailaja’s Answer

Hi George,
The first step should be self learning and for that you need to have the passion to learn software technology.
Developing curiosity in the technologies which are being used in and around you will inspire you to learn the techniques.
Basic example, when you use a mobile phone, you click on your browser -> open a window -> type google.com -> navigates to google home page -> search with words -> gives you suggestions, and goes on. Similarly, when you make a purchase in amazon.com or when you play a video game in your play station, etc, there are certain things happening in the back end, which manages and controls the actions and reactions. This is where software technology comes into picture where you have front end(exposed to user) and back end. And this is how you begin to learn how the things work, the technologies used, the basic programming languages used, etc.
You need to find out what topics interests you, then you can align your interest with the technology and begin to learn. There are no limited resources(books, google, youtube, online tutorials, various course offerings, etc) if you want to learn anything and convert your knowledge into practicality. There are lot of Q&A websites where you can post your questions while learning different technologies.

Hope you do well in your future! Good luck for your career!

Sailaja
0
0
Updated
Share a link to this answer
Share a link to this answer

Lauren’s Answer

Hello! There are already a lot of great answers to this question but I will add a few more resources that could be helpful to you and other students. I personally am a college student and one way that I have been able to volunteer in computer science is through the Girls who Code program, which focuses on bridging the gender gap in computer science - if you know how to code at even a basic level you could be helpful for some new students.

Another way you could help volunteer is through research work at your local college/state school, that was a way I was able to help out in a field completely unrelated to computer science through helping them to write scripts to parse and gain meaningful information from the data they collect. I think both of these places would be a good place to start looking!
0
0
Updated
Share a link to this answer
Share a link to this answer

Manu’s Answer

Hi George,

Typically, software companies hire fresh grads after a relevant 4-yr degree (from a university), and thats also where they typically offer internships too. As others mentioned, you can always build your knowledge on some online platforms.

Having said that, there are some companies that do offer high school internship, such as https://careers.microsoft.com/students/us/en/ushighschoolprogram, other companies use an agency like Staffup (https://www.staffupapp.com/), or use a contracting agency to get in.

0
0
Updated
Share a link to this answer
Share a link to this answer

Bashayir’s Answer

All of the above advice is really good. I'd also consider joining and volunteering at Meetup groups related to your area of interest.
0