Introduction
I enjoy learning about and gaining experience in different industries and in
different company structures, specifically focusing on the tech stack used.
This can greatly benefit a company as I am able to give the ups and downs of
any of the technology stacks. I am highly adaptable and well able to adjust to
new code. The things that I strive for:
- FrontEnd: HTML/CSS/JS, starting off as a means to get a button to do something in the BE, but quickly learned that users need good UI to be able to understand what the data does and in recent years found this "harder" to get right than the backend, a CRUD is easy, doing something cool with Background workers to handle data and process is fun. But if the user doesn't see any of this data, it is in essence useless. It is a fun challenge to get something looking right to the user while still displaying complex concepts that the user might not be able to understand if it wasn't for the UX. Frameworks are very easy to pick up once you have a basic knowledge of JS, of which I have very in-depth experience (fun side projects to build things purely in vanilla JS)
- BackEnd: Deep understanding of C#, I like to keep up with the latest lang version, understand why something isn't the best approach while still writing something that the next person can understand, where possible use a minimal amount of Nuget packages that are essential and very well maintained and write code that is just immediately understood. Understand most other languages to a basic extent, like C/C++ VB, Java or Python, just enough to convert it to C#!
- Maintain: Create very readable code, while keeping an application optimised for speed and reliability is hard, I can quickly understand code and create new features that fit the narrative of the existing code
- Create new Features: Quickly deliver code in an iterative fashion, while unit testing already give small previews and ask for feedback
- Improve developer experience: Isolating application logic and create a Domain Driven Design to create a more reliable product by creating more Test Driven Design principles
- Solution architect: A keen understanding of existing infrastructure and being able to quickly change it if the business requires it, I have experience with mono, microservices and serverless all using IaC and with security in mind and I very well know what to use when
- DevOps: Creating strong CI/CD integrations for reliability in deployment, which will in turn shorten the development cycle