Summary of my work year 2023
At the office, third cup of coffee on its way into circulation. Parsing email and checking boards, a PL for an assignment had forgotten to cancel a daily meeting for yesterday, January 1st .. I doubt anyone showed up.
All time reports were submitted on last day of work last year, opened up a new week on a new year, 2024. This time last year sucked, I didn't have any assignments as I was ejected from an assignment that needed to downsize (rightsize?) due to budgetary constraints -- as migration was overshooting time frames and budget .. I don't know how they calculate that but in my book, removing resources doesn't make it go faster, rather slower due to fewer available hours and resources.
I got a new assignment in the January - February shift, a hotel chain needed a resource to help out with migration and upgrades. The manager were very strict on how to do things and would not stray from the weird ways of how things were set up, conservation of how things were rather than upgrading and getting things current, as cloud is a constantly moving target. They had severely outdated code running, many things running on End-of-Life SDKs and old technique. I did my best to update and upgrade these as I was assigned tasks to fix it, I got stuck in some SDK upgrades that did not have any upgrade paths and had to refactor lots of code, asked internally for help but got no response, nobody seemed to have worked with or upgraded these SDKs. I went to the customer and told them that I could not complete the task, that I didn't have the knowledge, that I could not get help to solve the problem. The manager got angry and shouted at me for not being able to get it done. Eventually calmed down and said they had to think over the weekend and cancelled the contract on the following Monday morning. The contract spanned to the end of the month and I found somebody who had done work with the SDKs, solved the problem and put it into testing and QA .. the manager didn't say anything for the reminder of that month. Not even "good bye" as I left.
I think this was due to personal chemistry, I'm a easy-going guy of developer type, I tend to analyze everything and suggest improvements and simplifications, if I see space for that. The manager were quite the opposite, rigid and shut down all suggestions for improvements and simplifications, even the ones that would reduce costs -- just preserve the things as they were.
So, as I left for vacation in end of June, my assignment ended, at end of July when I was back from vacation, I was unassigned and on "the bench". I started studying (or rather pick up where I left off earlier) for certification. Every now and then I got small tasks to solve, scripts for automation, scripts for transforming large quantities of data, outline and document message formats, stuff that nobody else could or would do.
(Customer A) Mid-October I got an assignment with a customer that needed to upgrade a management site, where they managed IoT devices in housing properties, from an old and outdated server platform with aged runtime to a new and current platform with latest release runtime, as there were lots of breaking changes between the versions, I ended up with refactoring lots of the messy code. There were copy-paste mess, lots of repetitions of code chunks throughout the code and very much ad-hoc handling of conditions, zero object-oriented code and in some places home brew RPC-calls. I sunk 20 hours into this at first, the customer were really happy to see the main parts of the interface come to life and asked us to continue. The condition handling was horrible and I spent more time on it, untangling spaghetti-code, chasing bugs and correcting database queries that was at best hit 'n miss. Rewrote large chunks from scratch as the old code would not run any more. The last changes were added just before closing down before new years.
(Customer B) Alongside the previously described assignment (Customer A) I got another one, with a customer who had been more or less in maintenance mode for the last year, that needed to upgrade their whole platform and that needed to add CI/CD, a test environment and automation/repeatability into their platform. A colleague had been adding some integrations for the customer to just squeeze by, I did a lot of dry-coding in preparation for a new test-environment (that never materialized, privilege problems setting it up) and started working on current integrations.
I hope that 2024 will be stable and that I don't need to change assignments a lot, the Customer A assignment might end if they decide to just go with the barely-running refactored code with zero improvements .. or they order/contract me to rework and modernize the code. Customer B will probably just continue on in more/less tasks as they need to modernize and open up access to data sets through APIs.
No new certification studies planned, though my manager suggested I should go for the next one in the chain. I have been suggested to do a few write-ups for certain topics and do presentations on our competence conferences - I need to pick 2-3 subjects and submit on RFPs for these conferences.
Otherwise, I'd like to further myself into rustlang, as I see more and more demand and questions about it, I'd like sink a few hours into it to get an idea of how it can be utilized for the kind of work we do.