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
20 answers
Herman’s Answer
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
Jonathan’s Answer
Zach’s Answer
Michael’s Answer
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!
Jim’s Answer
Purva’s Answer
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!
Tudor’s Answer
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
Muhammad’s Answer
Dexter’s Answer
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
Philip’s Answer
kaili’s Answer
Cicely’s Answer
Sumit’s Answer
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.
Zhe’s Answer
Ramesh’s Answer
Jakub’s Answer
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.
sailaja’s Answer
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
Lauren’s Answer
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!
Manu’s Answer
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.
Delete Comment
Flag Comment