Becoming a software developer is a big undertaking. Finding a community that can help you is vital to your success. Let me be plain about this: I would have failed out of college if I hadn’t sought tutoring from my classmates. If you want to become a software developer without a traditional classroom environment, you’re going to need help.
The Biggest (But Least-Discussed) Advantage of Degree Programs
In my opinion, the biggest strength of degree programs isn’t the curriculum or the instruction. It’s the built-in community of people with the same goal who have to share a physical space. The university provides tutoring, professors have office hours, and there are other students that you can bother and maybe even befriend.
When you’re just beginning to program, there are innumerable ways you can get stuck and discouraged, and just the slightest nudge by an experienced friend will get you out of a tight spot. You need a place where you can ask “dumb” questions.
If you can afford it, consider joining a Udacity Nanodegree, Treehouse Techdegree, or Coursera course. They have communities baked into their offerings, as well as team members whose job it is to respond to your questions.
Finding a Community Outside the Classroom
If you’re not enrolled in a program, find a non-academic group that regularly meets in a physical space. Use Meetup or Code.org’s search engine to find a local computer science class. Find a meeting, go to it, and make a friend.
If you already have a friend who is a developer or a student, realize how valuable they are and how much they can help you. This strategy worked for Byron Woodfork, a software developer (and conference speaker) for 8th Light, a software consultancy in Chicago. Watch his excellent talk, The Truth About Mentoring Minorities, in which he discusses what worked for him and what didn’t.
If none of the above works out (or even if it does), start looking for an online community. To judge the MVP (Minimum Viable Product) for an online community, ask a question and see if it gets answered within a day.
Girl Develop It has chapters nationwide that sponsor events and create an anchor for online communities. The Ann Arbor GDI Slack workspace (join it here) is an excellent example of such a community; there are lots of professional software developers ready to offer help troubleshooting technical problems or help teach you new subjects.
If you’d like to talk with me or an Atomic developer, here are a few folks willing to be mentors:
Also check out Stephanie Hurlburt’s curated list of CS mentors. Basically, she manages a long list of people who want to help you learn. It’s an amazing resource. You can also follow Hurlburt on Twitter; she does a great job providing advice and help to beginners.
The journey of becoming a software developer doesn’t end when you get your first job. You’ll still need the help of a community (hopefully, your employer will provide this). Cultivate the skill of asking for help, and give back at every opportunity.
If you’re working on becoming a software developer, get in touch! My home email is firstname.lastname@example.org. Let me know how it’s going, what worked for you, or even where you need help.
You should also check out the rest of the series:
- A Roadmap
- Understanding Algorithms
- Learning to Think Like a Programmer
- Expanding Your Skills into Other Domains
- Finding a Community