HoverText.

Yes, I am alive!! It has been a long while since I've updated anything here, and it's because I've been busy.

A little over two years ago I started working for a company called Myntex, who's primary product was a private communication system called ChatMail. I got the chance to update and upgrade both of these websites as the primary developer while working with Myntex. CM is a phone messaging system that is secured by layers of encryption; and I call it a phone messaging system because it really is an entire system that has been hardened against illegitimate intrusion of any kind. Myntex owned the data centers that handled messages worldwide, which all came through as encrypted payloads so even we couldn't access data pertaining to specific messages.

While updating these websites I was also authoring several microservices for our new microservice architecture. This was all back-end server development in ways that would utilize our new microservice messaging system. This was the most exciting and current-generation web technology I've ever had the opportunity to work with, and was very exciting. Now all of these microservice deployments were building towards the release of our newest private encrypted communication solution.

During my time with Myntex, ChatMail got an upgrade that included encrypted voice calls (and not just WalkieTalkie-style voice messages, I mean actual two-way voice calls), which I had built a time tracking system for. After this, the company was working to get rid of a private domain on Google Play Services and distribute their software internally. As a security and privacy-focused company we subscribed to the "zero-trust" policy in more ways than one, and as such could not trust Google Play Services (enterprise-level or otherwise) to invest in privacy as much as we were prepared to. Out of this need to cut Google out of the picture (software-wise), Renati was born (renatimobile.com).

Renati needed to be beta-tested, and in that beta testing we wanted a promotional website and feedback form rolled into one, which is what beta.renatimobile.com became. This was using exciting new front-end technologies on top of the JavaScript Vue framework, all of which I had the chance to research and build from the ground up. This was a keystone to my work with Myntex, and really nicely demonstrated my capability as a web developer. Unfortunately the site lies behind a beta-key password, and I can't just give out the password that I have to everybody. The CEO, Geoff Green, was kind enough to provide me with an example key to get onto the site to show off at interviews, so it's not completely out of reach for me to demonstrate my past work.

--------

Then COVID worsened, then economic uncertainty, then my anxiety about affording mortgage renewal when it would become time to do so...

--------

From here my story is filled with regret. I was contacted by a recruiter who asked me how things were going in my current position, and I responded "Good. Some of the work is more exciting and interesting than other parts, but that's to be expected". He took that as a chance to advertise a role he was hiring for, estimating that I would be payed roughly $20k more than I was getting currently. My anxiety about costs on everything skyrocketing pushed me to say "I'm interested", and this was my first mistake.

After a few interviews, I had a job offer that looked like it would pay that significant amount more that I was looking for. Hindsight being 20/20 and all, I regret saying 'yes' to that offer. The state of the codebase was really rough, but in all honesty that was advertised to me in the final round of interview. Old versions of everything was being used, and there was no discernible structure to the code. I shrugged this off, as it only meant that there was a lot of work to do and because I hate being idle (especially at work) it was really a good thing. Comments about the poor state of the code or suggestions for improvement were denied, shrugged off, or flatly ignored. I was told to stop talking about it, as some of the developers who wrote the code initially might not appreciate my commentary. My passion for clean code and desire for a coding standard was not appreciated, and it sounded like the "lots of work" to be done didn't involve the existing code.

I looked into the git log and this code had not been originally authored by anyone who was currently with the company. This was odd, so I looked into this further and found that this company had a history of development employees leaving in quick succession. I thought that this was just because these past devs weren't up to the task of refactoring or otherwise correcting the spaghetti that was in our application. I took it upon myself to start prettifying this code. This was my second mistake.

When given a task (agile board stories were assigned) without being prompted I started to clean up the format of the code in the files I was working on. I changed code where it was relevant to do so as part of the work story, but I also cleaned up the files that the specific task was part of. It's important for me to note that I wasn't actually changing any of this code outside of my task, I was just fixing indentations and running prettier to lint the files. Some of these files were in excess of 3000 lines long and had ONE function in them. I also removed import statements that weren't being used anywhere, and after I was done, I felt, it was much easier for a person to parse through that file, so if the company ever wanted to actually refactor and fix pieces of the software that were not operating 100% of the time, they could do so with more confidence.

This was not the case.

I learned that we never planned to refactor anything, but instead we would rewrite it for another market and port it back to the current market. After this I was told that management had a problem with me "making changes beyond what was being asked for" in my pull requests, and then was given fair severance pay and waved goodbye.

================

And after all of this I've learned some valuable lessons, the foremost being 'if you're happy where you are, stay there'. Also 'If you see a problem and know how to fix it then make sure to explain fully why it should be fixed and what steps you can take toward that fix. Then if and only if you get permission to implement those steps that you've planned should you start to work towards a fix.'

I'm still young in my career and so I'm glad to have learned these lessons, even if they had to be learned in this hard way. I'm as anxious as ever about economic uncertainty, and I'm back to marketing myself around the skills that I've learned over these past 6 years as a software developer.

Blog Entries