As a development team we've been able to complete a lot of deliverables, but in terms of my personal goals I still feel like there are a lot of unresolved tasks.
One of the things that I wanted to accomplish this year was to modernize our legacy API codebase. This is something that has been hanging over my head for a while, but it just seems like it will never get done.
On the flip side, some of my other initiatives are starting to bear fruit.
1. We now have two API services that are fully written in F#, and other bits of F# have squeezed their way into some of our other codebases.
2. Our main React application now uses a design system built on top of styled-components and styled-system, which has done wonders for improving development speed when working on that app. It's taken about 2 years, but all the hard work put into this project is starting to pay off.
3. We upgraded all of our projects to use Paket for dependency management, which should solve a bunch of the pain that comes from trying to manage Nuget packages.
4. We started using FAKE for instrumenting our build and deployment tooling, with the goal of being able to rebuild the world consistently on any machine at any time.
There are still plenty of challenges that lie ahead, the biggest of which have to do with people.
Some of the older members of the team are very resistant to change in how the code itself is written. It often feels like an uphill battle trying to get everyone to adopt modern standards for writing code. Things like Hungarian notation, too many noisy comments, and other code smells continue to plague our codebases. No matter how hard I try I can't seem to get people to see the light.
But all that being said, I am already looking forward to getting back to work in 2019.
I want to come back refreshed and ready to hit the ground running to continue solving problems.
If anyone else has faced similar challenges in your workplace, I would love to chat with you about your experiences.
@maxdeviant I’ve had a similar experience. What I found was that being the smartest person in the room gains you opportunities for career advancement, but skill development will be slowed unless you have a mentor. Ultimately I left that position for one where I’m working with many people who are smarter ( and wiser ) than me.
@stephen Yea, I do find that I am often the smartest person in the room, at least when it comes to technical things.
There is still a lot of wisdom to be gained when it comes to the softer skills of building software.
@stephen @maxdeviant I'm dealing with this now. I used to work in a company without any technical oversight, then I started working as a freelancer. Either way, I always had to figure everything out on my own. I'm considering getting a mentor or a job where I could get feedback from a more experienced person on a regular basis.
@maxdeviant It took 4 months to re-build the whole web app we are doing at my job, the speed was totally based on the team having the same goals as me and the same ideals.
Also the confidence of the product owners on the team.
Missing working on games thought, but it looks like I will start again in games next year.
Revel in the marvels of the universe.