Anybody who follows me will likely know that I am unemployed and looking for work - I think I have mentioned finding a job as a high priority thing on almost every article I've written in the last few months đ . I haven't had full time work since late last year, and I had only a few hours per month of consultancy work since, which ended over 2 months ago.
I've also been struggling for things to write recently, so I thought I'd write a bit about the problems I am facing as an "old man" (I am over 40) in web development - an industry that is almost unrecognizable today in comparison to when I took my first steps into it.
Â
So let's begin with a little background to get everyone up to speed....
Â
In 2008 I quit my job as a cinema projectionist. It was a dream job, until a management change turned it into anything but a dream.
After a few months wallowing in self-pity at being unemployed I enrolled in a year long web design course at a college (what we call TAFE in Australia - an acronym and abbreviation of "College of Technical and Further Education").
Considering it had been about 8 years since I touched C, and years before that since I had touched Basic, I went in with pretty much no prior knowledge of what I was doing.
The first 2-3 months were the hardest, but once I got my head around how HTML & CSS interworked with each other everything else kind of fell together. Even taking 5 weeks off for my wedding/honeymoon couldn't stop me - I taught myself the PHP and JavaScript modules of the course in about half the allotted time.
But way back then the landscape of web design was very different:
- Your choice of server-side languages was mostly PHP or ASP*.
- Your choice for web server was pretty much down to Apache or IIS*.
- Your choice for database similarly was likely either MySQL or MS SQL Server*.
- JavaScript was almost exclusively client-side at the time, with it's main use-case on a basic website being client-side validation of form data before sending it to the server for processing.
- If you wanted to do something really funky client-side like a game or more truly interactive experience, it was usually done with a Java applet, or a bit of Flash (some rare websites were just all Flash!).
Â
* Yes there were others, but they were not exactly common in the creation of normal everyday websites.
Â
But (thankfully) those were the later transitional days of the "old web", and the so-called Web 2.0 was well on its way in, and my first job in the industry quickly transitioned me from the old world thinking into the new. I wasn't making small-scale basic websites anymore - my first week involved starting a web app where JavaScript was a first class citizen - mapping and managing a fleet of trucks in pseudo-realtime on a web interface using Google Maps. This project kept me going (on and off) for about 2 years.
Â
The next major project kept me busy from 2012 until 2019, with only a few small deviations along the way. It involved software to monitor and control an intelligent lighting system. The on-site components were mostly somebody else's job, however I was making the server components to communicate with the on-site hardware, and the website to view & manage the data.
Two major factors of this project shaped my future experience as a developer and where I am at right now. The tech stack I chose back then was fairly standard for those days - just PHP, JavaScript, and jQuery - and due to how big the project grew in a fairly short time, opportunities for forward progress as new technologies became popular were quite limited.
- NodeJS was still so very young at the start of the project and (in my mind) was still too much of a gimmick to go all in for a big project. I tried to introduce a NodeJS component later with a websockets-based communication backbone, but it was never given the green light.
- The code was object-oriented, but was already huge by the time ES6 brought classes into JavaScript. Plus we were supporting Internet Explorer so would have needed backwards compatibility with something like Babel. Easier to not bother.
- I introduced a single page written in AngularJS in 2015 with the aim to to do more, but with the announcement that Angular 2 was going to have significant breaking changes I put it on hold. That single page was later made redundant, then removed, so Angular never really had a chance.
- I got SCSS into the project fairly easily due to its compatibility with raw CSS and slowly worked in more functionality as I could.
- I managed to work Bootstrap in around 2015 thanks to a few weeks of feature freeze for testing where almost no bugs were found.
- I also introduced Handlebars via a new feature that benefited from templating, then upgraded other components as the need arose.
- I had not yet heard of React or Vue to even consider them, until we were basically only working on performance and stability. There was definitely no way to sneak in a change like that.
Â
But that was pretty much it in 7 years. While I had pushed our tech stack a few steps forward, the industry had sped up to a run while I was doing it! Couple that with far too many years of significant life stresses which stopped my hobby programming (my only way to try out really new stuff), and I ended up way behind the curve.
Â
Last year I thought I had found another great job developing a new intelligent lighting system. I was supposed to assemble and manage a development team here, but the linchpin role for that team never quite happened due to some miscommunications, leaving me with no team, on the opposite side of the world to the rest of the company. I was also seriously burnt out and stressed out at the time and quite turned off by their tech stack, so I left. The only positive from that short-lived job was in rediscovering Python.
Â
To digress for a minute (but it is important to my next point) the reason for my dislike for their tech stack was this - I have a special hatred for React. Years ago I had taken a dislike to the common argument for migrating to React: JSX.
Everybody was all "đ JSX đ", but as far as I am concerned it is a horrible code smell. The whole point of templating is to separate your logic from your templates, and simply changing the way you couple your logic and templates is not an improvement.
Yes, I know JSX is optional. But jumping to my last job again they used React, and even ignoring their use of JSX the project was so over-engineered that there was no clear path to follow for debugging a variable from the API to the UI. Pair this with the emotional stress I still carry from that job, and the idea of using React now is honestly repulsive to me, and I doubt my feelings towards React will change.
Â
Â
So, back to what I was saying....
I have a non-compete clause from the last contract which prevents me working in the lighting industry again for just over 2 years, so I can't even work in my own niche, and the current job market is stacked against me - most of the ads (I would say >65%) want React, which I won't touch. The rest almost all want years of experience with Vue or Angular. I've used Vue only briefly, and I didn't get back to Angular after the bump from 1 to 2.
I picked up Python again last year and then taught myself Django, and I really like both, but all the Python/Django jobs want years of experience too (or also want React).
I'm also looking at developer-adjacent positions. Tester, scrum master, team lead, UI/UX designer, technical writer, etc.... but they also want years of experience I can't prove I have beyond saying "I kinda did this sometimes as part of being a developer" đ¤ˇââď¸
I have very little in the way of real-world achievements I can show on a portfolio because most of my previous work has never been finished due to business decisions, never been released publicly because it was an internal project, or no longer exists because it reached end-of-life.
In a way it feels like the last 10 years of my career have effectively been wasted, and the only way I can get a developer position is as a junior!
Â
I've looked at skilling up in a similar field too. For a few years now I really wanted to learn some ethical hacking skills, but because I own a stupid damn Macbook with Apple's condescending "we know better than you do" attitude all over it I can't access the wifi adapter in a way I need to, so I can't even learn the basics without spending a considerable amount of money on a new laptop.
Â
I also wanted to move partially into photography as a job, having bought a fairly high-end camera late last year. But a pandemic certainly puts a stop to those kinds of face-to-face jobs. It doesn't help that my Ukrainian language skills are still quite poor (and my Russian is almost non-existent), and while I'm not working I can't afford a teacher!
Â
Â
So here I am in 2020, unable to find a developer position because my skills are so far out of date from current needs - I can make virtually anything I put my mind to, but because I don't have the buzz words on my portfolio I am not an attractive candidate. I'm unable to find a parallel position because those skills are either not developed enough, or are unprovable. My savings won't last forever, my only earnings are the few cents I get here or from BAT tips, and the few dollars I get trading crypto. But due to stupidly high gas fees on the Ethereum network that isn't even profitable right now.
My days alternate between artistic pursuits to help me keep some semblance of sanity, working on my portfolio or (rarely) my game, while trying to motivate myself to work on two potentially profitable projects of my own making.
But one of those projects requires the Australian cinema industry to pick itself up again, which looks like it may not happen this year based on the effect the Coronavirus has had on box office takings, while the other project seems to be in limbo after a discussion about money.
Considering the person who wanted it already received one job for free (which I wasn't quite happy about - I thought I was giving them a demo, not something they were planning to make public), they then wanted to pay me less than $40 for the next job, which works out to about $1.50 an hour. I asked for about $4.50 per hour, a typical amount for a junior dev in Ukraine, but I have not heard anything since.
Â
Â
So where is this all going? Honestly I'm not quite sure myself.
I think I just need to put it out there, because this is bothering me a lot right now. If I can't find or make something profitable for myself within 6 months I will be at risk of running out of money, and being homeless in a country where I only have basic skills in the language is not my idea of a good time.
Right now I can't even get back to Australia due to Coronavirus restrictions on the number of incoming passengers, which means the airlines are only accepting business or first class bookings and everyone else gets cancelled, and that would cost me US$20k or more I just don't have!
Â
But hey, I have a pretty decent knowledge of the remote work job advertising platforms I have found, so I will probably review those sometime soonÂ