Zero to Software Engineer

cnast, 05 May 2013, No comments
Categories: Life, Zero to SWE

Seven years seems like a long time in blogging years. With all the categories I’ve accumulated on this blog, you’d think I’d have one to use for this post. What is there to do, but pick from the best from pile and add a new one where none exists?

I’ve spent too much some time over the past few months thinking about goals: what mine are, what they’ve been for the past 10 or so years, and the choices I’ve made that have brought me/kept me where I am. So much of my adult life has been about getting by, but I’ve discovered that’s not enough. The future arrives whether or not we’ve planned for it, so here I am, in my future, figuring out what it was I wanted when I began.

I’ve had to think about these goals and how they connect to the people around me. I’ve had to determine my next step is. I’ve catalogued and talked to death my regrets, but there’s no do-over on its way. Granted, I know I’ve accomplished stuff, but I’m tired of struggling to find work, of having to cobble together contract upon contract to support my family, watching the future being built around me and not being able to participate at the level and in the ways I want. Usually this brings me around to thinking about applying to more school (while wondering why I’m stil struggling) — and this time I’ve almost applied to both library school and a computer science certificate program, but I’ve managed to resist and keep digging instead.

Surprise or not, here’s where all the digging has brought me: for the time being, I’m setting aside the years, effort, and energy I’ve invested in academic and public history, women’s studies, and educational development, and teaching myself software engineering. It’s not quite going back to school, but it’s not that different from where this frustration has taken me before. Looking back, it’s what I should have done after high school, but didn’t, and it’s one of those regrets I’ve got to stop whining about and fix. Enough with cobbling — it’s time to do things right. I want to be a real contributor. I love being the techie person on a humanities project, the person who can build the website, the person who can help you search your mail, set up your calendar, or download apps to your phone, but it isn’t my longterm goal. I want to build what I imagine. I want to build what you imagine. I want to understand what I’m doing, and do it efficiently and securely, instead of mashing code until the errors go away and saying good enough.

I feel like the timing is right:

there are so many ways to learn right now. 

MOOCs, online tutorials, books, meetups, hackdays, makerspaces, conferences, unconferences, forums, and blogs, not to mention just doing something. Designing my own learning isn’t that different from designing a workshop or course; it’s just bigger. Because I’m the student, I can tailor my learning to my interests, strengths, and weaknesses. For the first time ever, there’s no penalty for risk-taking. If I don’t get something right, I won’t fail a class, lose my scholarship, or get kicked out of my program — I just keep trying.

I’m in the right place.

I moved to Silicon Valley a few weeks ago, which strengthened both my regret and my resolve. I’m surrounded by people doing what I want to be — and should have been — doing. Walking down the street I catch snippets of the conversations I want to be having. People are excited. Not all of them — there are definitely issues (long hours and sexism are two), but I didn’t hear these conversations at all back home. Excitement is contagious.

Also, in the United States, I can use the word engineering in a way I couldn’t if I was still in Ontario.

software engineering is a field where abilities and contributions can speak for someone without a traditional degree.

Not sure how long this will last, but for now, a traditional university credential is only one entry path to software engineering work. I have degrees, just not the usual ones for a software engineer. Going back to school isn’t an option for me right now, but making things is. If I end up needing an official credential, the self-directed learning won’t be wasted.

software engineers find work.

I’ve spend a lot of time on job sites these last few years. There’s a noticeable difference between the number of jobs for historians compared to those for software engineers. I’m not planning to throw away what I’ve learned in my degrees and work since graduation, but I do hope that the new skills will join the old and lead me to meaningful work that pays a living wage.

And so…

I started an online algebra review this week which won’t contain any new material, but it’s a good refresher, will give me some confidence, and help me stretch my brain while I decide what’s next. It’ll take me another week or so to finish the class, then I’m thinking of learning some Java. I’ve taken intro Python and intro C, and worked through a basic developing for Android book, but maybe I’ll dig around and see what formal swe programs include.

I’m sad about not going to library school since I really think it’d be a good fit for me and everyone knows how cool librarians are (not too mention how long I’ve been geek-crushing on certain librarians), but reality is persuasive.

I blogged a lot more when I was a student, perhaps because I had different priorities, perhaps because I was procrastinating from my schoolwork. Perhaps it was because I was writing all the time so had lots of things to share. In the coming weeks I’ll be dusting off my blog and using it to record what and how I’m learning;  I’ll be using the category Zero to SWE for these posts. I’m still an ed-dev geek so I know that reflecting on my learning is part of creating an effective learning experience. And I really want this to stick.


Leave a Reply:

Name *

Mail (hidden) *