Maybe if I hadn’t been so over-worked the last two years, I would be willing to stick with it longer. But, working up to 12-hour-days on days I have class, and then spending so much of my time off-campus also at a computer working – prepping, grading, answering questions, etc. – has thoroughly burnt me out.
I mean, I’ve been burnt out for well over a year, but at this point I just don’t want to continue. And it’s only the 3rd week of this semester. I know I’ll have to tough my way through this semester, just like many semesters before it, but I cannot return to this in 2019. I need something else.
From software to teaching
I was miserable as a traditional, corporate software developer with traditional, 8-to-5, salaried employment. I hated feeling baby-sat since I had to be at a specific location at a specific time to do my work on a specific machine with specific tools. Hated it hated it hated it!
I hated how pointless it felt, building software that didn’t affect me, or didn’t improve things I really cared about, or were even remotely related to a topic I was even tangentially interested in.
I hated always being underpaid and underappreciated, always feeling different from everybody else, and feeling like a zombie throughout the workday.
When I began teaching (part time), I loved the freedom – I built my own curriculum, on my own machine, using tools I liked. I had to be in the classroom at a certain time, but beyond that, I was simply trusted to get my work done whenever and wherever. My best work is done from home, at my desk with my computer with my music, and not being disturbed by listening to smalltalk from coworkers on the other side of a flimsy wall in an open-office floorplan.
I loved teaching my students, and creating classes that they liked being in, that empowered them. I liked building accessible and welcoming classes, classes that understood that I’m teaching adults and they have their own lives going on, so I’m not going to assign grade based on attendance. Classes where they know that I know that they’re adults, and I treat them as such.
But, over time I got more and more work. First a standard full-time load – four classes. But as the need arose, some semesters I ended up with 5 or 6 classes.
A majority of my work is done outside of the classroom, so it may seem invisible to most people. Again, it’s grading (very time consuming for programs), prepping for the next week’s classes, correcting errors/typos in slides and exercises, answering questions via email and phone, and so on.
If you reuse everything from previous semesters, students may cheat. Some things I can reuse, but I’m also always striving to make things better, so that does require work every semester to improve my slides and exercises and projects and so on.
In an effort to cut down on my grading time, I have been adding unit tests to all the projects and labs in my Data Structures class. Writing a programming assignment can take 2 – 3 days: Building the full program, building a sufficient amount of unit tests, writing the documentation, and bundling it all together.
I try my best to write clearly and give illustrations and diagrams where appropriate, I try to make sure my work is accessible and doesn’t leave students feeling completely lost. I’ve had so many teachers who were disorganized and 90% of the challenge was figuring out wtf they even wanted.
Additionally, my employment as a teacher at a community college – adjunct or full-time – depends on me actively working towards a Masters degree in Computer Science.
I completed one semester at KU, taking an undergrad class and the orientation class.
The second semester, I dropped the grad-level Machine Learning class within the first month because I didn’t have enough time to complete the time-consuming hand-based computations (things that we should be programming a machine to do, but okay…).
The third semester, I dropped the grad-level Visualizations class within the first month because I bombed the first homework assignment because I also did not have enough time to figure out and work through all the computations and the programming assignment, and the drive to KU is 40 minutes at best, and I had to pay hourly for parking, and with my full-time employment it just was not doable for me.
I dropped out.
This semester, I’ve begun at UMKC. I’m taking Advanced Software Engineering, which is doable. I can get through this semester and I can work with a small team to build an app. Piece of cake. Also, UMKC is 10 minutes away, I went here for my undergrad, I know the campus and some of the faculty, and I’ve even worked here previously as an adjunct.
While the instructor of the class still assumes that the grad students are only students and not working three part-time jobs (teaching, teaching, and running a startup), it’s doable. It’s more accessible. But it’s still frustrating.
And it’s not really what I want.
Where to go?
I don’t really want another degree in computer science. I’m not really that interested in pure Computer Science theory anymore. Heck, I’m not even that interested in the idea of teaching Computer Science anymore – actually, I’m feeling rather adverse to it at this point.
I’m interested in linguistics. I’m interested in entrepreneurship. I’m not interested in software development for other people/businesses, and I’m not interested in teaching anymore; at least, not until I’ve had a good and thorough break. Maybe again in the future.
Sometimes I think I should go back to doing software development for a bit – it’s good pay, and I’d be able to come home and just veg-the-fuck-out for once. I wouldn’t be able to continue going to school, though. And if I dropped out, I’d be denying myself the option of the “back up career” of teaching. Maybe I’ll want to teach again in another 10 years? Or in my retirement age? So I don’t quite want to deny Future-Rachel that option.
But the idea of going back to work full-time as a software developer feels like a step back. It’s not what I want, and it would continue to steal time away from things that are really important to me, although not very lucrative right now: My startup. Learning about linguistics and languages. Projects revolving around educational games, language preservation, and so on. Volunteering for good causes. Raging against capitalism.
I could do contract work, or part-time software development (if such a thing even exists; it’s super rare if it does.) For a contract job, I’d probably have to find some other people to work with, I wouldn’t want to do it alone, and I probably wouldn’t want to be the one in charge. I’d need a human buffer who can translate human requirements into programming features, because I don’t need that kind of stress in my life right now. I’d probably need a second programmer to help split the work so we’re not over-encumbered by what should be an alternative to the 8-to-5, 40+ hr/week development job.
Or, I can be a contractor at an established company for a short amount of time. Usually, companies dislike my history of working here-and-there for 6 months at a time, but maybe it’s fine for a contractor. At the end of this year, I’ll have been teaching at my community college for 3 years now, so I can stay somewhere as long as I’m happy.
I wouldn’t mind being the “all-tech” person at a small business that doesn’t revolve around software. Like fixing the business’ computers and updating their website and making little utilities to help make life easier. That sounds fun. Some Kansas City small business, hire me as your techie.
But going back full-time just … doesn’t seem right. I don’t think I could even begin to tolerate it. What I’ve wanted to do, since I was 12 years old, is just run my own company. But I also have to pay bills.
Here’s what I actually want: Time to build some educational games, and focus on those games. Focus on making them and marketing them. Focus on getting the word out. Focus on maintaining them. Focus on making them a viable product to sell.
And keep working at it. And keep trying. And keep going until I succeed in making some amount of money.
But with the way my life is, with having to work full-time, or be going to school, or whatever else, I can’t. I literally cannot, because my focus is so fragmented. I am constantly switching between planning for this class, or that class, or the other, or switching into student-mode and focusing on lectures and doing homework. When I’m home and allow myself a bit of free time alone, I pursue projects I can complete within a day, within a few hours: Drawing, writing a comic, making the odd YouTube video, programming a small experiment or utility, and so on.
We’re all working on visual novels this year, and we’ve been getting them done with our once-a-week meetings. But, I still don’t have time to focus on the marketing, or much of anything. Artwork here and there for the games, getting them published and on a store, and not much else.
We stop working for weeks at a time because we’re all so busy. And even when I neglect the things I want to be doing, I’m still completely overwhelmed by work. Work work work work work. If I take a Sunday to spend time with friends, the regret hits me the next day as I’m even more overwhelmed and under pressure.
I’m tired. I don’t want to do this anymore. I want to build cool things, useful things, educational things, fun things. I want to have a chance to make it work. And I’m so depressed because I still have 14 weeks left of class – the semester has only just begun.