2018 Review / 2019 Aimsyear in review
Twenty Eighteen was a whirlwind of changes for me professionally. I went from working in an agency to working for a FinTech, and the difference in those two roles and the tech stacks involved have brought me many new skills as a developer. But I still suffer anxiety with all the things I want to learn.
What I Learned
I've already blogged about this before, but I moved from a PHP / JS role to a fullstack JS role. That was great, but it was very hard initially. I had to put in many hours outside of work to bring myself up to speed on certain core JS concepts I'd missed before, as well as learn some of the key React APIs. But I went from not knowing how to pass props down to rebuilding a fairly complex calculator. That felt like a big achievement.
2. Learned The Value of QA Engineers
The QA process in my current workplace is much more rigid. Every ticket is defined, has parameters, and is approved / rejected by a QA engineer before it goes into production. For someone who is obsessive about quality, and takes it hard when I get things wrong, having a QA Engineer has meant very few issues are raised once the code is in production. Those I answer to in the organisation have much more confidence in the development process in its entirety because of this.
3. Learned about CI Tools
I'd used Netlify to build my static sites before, but in this new role I was able to get visibility of the pipelines that were set up by our SRE (site reliability engineering) team that built the site in a Docker container, and also ran a feature CI on our PRs. This way, we could see straight away whether code was good enough for production. I'm still fascinated by this complex world and want to learn more.
4. Learned the Value of a Good Code review
I've had some very smart people review my code, and I've learned a lot. For example, why destructuring is a good thing, why you wouldn't use the
index as the
key value in a React map function, and loads more.
5. Learned how to Use GitHub Properly
I made a grand mistake of merging to master at my new job ... but I only made it once. I broke loads of stuff and caused a world of pain for my team. Now even with personal projects it goes against the grain to commit anything to Master, even if it's a tiny change.
6. Learned the value of JIRA
I used to believe JIRA was this unwieldy tool that only crackpots would use. But it's so useful. We have strict definitions of where the responsibility lies for each step of the process, we can't release code into production unless is the process has been properly followed, and we also have an "expedite" lane so developers can focus exactly on what they need to do. Honestly it's transformed the way I work and made shipping code so much faster.
What I Want to Learn
Unit & Integration Testing
I've never written tests before, but I want to get to the stage where I could say I would be happy to undertake a role that involved Test-Driven Development.
Still don't understand that thing. I want to learn this dark art so that I can set up feature CI tools and production pipelines myself.
More Logic Based Development
I enjoy being the Fronted Developer, but I'd also like to build a few microservices and become more comfortable with the thought process of building for stuff that isn't going to be displayed in a browser.
Advocate for Younger Developers
As I see how skewed the whole development industry has become, I want to use my privilege to help others from different backgrounds to get into writing code.
Okay, I think that's it! I have still got a long way to go, but I'm pleased that this year ends with a new baby in the family, and with more career choices open to me than I've ever had before.