Technical Skills

Technical Skills

I have broken my experience with technologies into five distinct classifications: Novice, Adequate, Competent, Proficient, and Mastered. The way I quantify my skills should not be taken by its classification without reading the reasoning in the specific technologies' section. While there are plenty of skills that will be listed as Adequate, these should be taken with a grain of salt as I can still do meaningful work with them. It should also be noted that I feel I can pick up any technology given a short rampup period.


  • Novice means I have barely any experience with the skill - these have been omitted from this page.
  • Adequate means that I have used the technology and have understanding of its principles and I can contribute to projects, but theres plenty room for improvement.
  • Competent means that I have learned enough to be able to contibute somewhat easily, but there is still room for improvement.
  • Proficient means that I have a great understanding of the technology, can contribute easily, but I wouldn't say I have mastered it.
  • Mastery is a category I don't consider achieveable as there is always something to learn and improve on, so it is omitted.
code_xml

Frontend

PROFICIENT

I have used HTML extensively to make web pages and have a thorough understanding of structure. I have a good understanding of how elements work for accessibility and SEO, but I could improve.

COMPETENT

I have used CSS extensively to make web pages and have a great understanding of styling and positioning. Advanced CSS styling such as custom animations and responsiveness could be improved.

PROFICIENT

I have used JS extensively to implement functionality in client side applications.

ADEQUATE

I have used React to build client side pages, but my experience is limited. It is intuitive for me and I can contribute meaningfully despite my limited experience.

PROFICIENT

I have used JQuery extensively in an enterprise software engineering role and feel comfortable to take on any challenge.

host

Backend

PROFICIENT

C# is my bread and butter. It is the language I am the most comfortable and dangerous with. I have used it in all my enterprise software roles and in my favorite personal projects.

PROFICIENT

I have tons of experience in .NET MVC and WebAPI and feel very comfortable with these frameworks. MinimalAPI isn't listed, but I can easily use MinimalAPI as well.

COMPETENT

I have used Entity Framework often in my personal projects and jobs. I'm a big fan of using this ORM instead of manually writing SQL all the time (though I still do write SQL).

COMPETENT

I have listed this as Competent though I'm probably somewhere between Competent and Adequate. I can write unit tests easily, however I haven't had to write that many in my roles. Typically my companies never opted for full coverage and instead only wanted tests for critical business logic.

ADEQUATE

This was the first language I picked up 7 years ago and it is how I learned object oriented programming. It's been a long time since I've used it, and I never used it in a strong capacity, so I listed my skills as Adequate. It's so similar to C# I'm sure I can meaningfully contribute with it.

ADEQUATE

I have used Webforms in an enterprise environment but my experience is quite limited. I haven't needed to do much webforms development as most work was migration from this framework to MVC.

database

Databases

COMPETENT

I have a thorough understanding of SQL Server and have used it often for storing data in normalized tables.

COMPETENT

I have a thorough understanding of PostgresSQL and have used it often for storing data in normalized tables.

COMPETENT

I am pretty inexperienced with MySQL, but I have used it in school projects. I labeled it Competent since SQL translates mostly one-to-one between providers.

analytics

Data Science

ADEQUATE

I have used Python for ETL operations, analyzing data and in a limited capacity, frontend development. I have mostly used it for school projects and while I'm decent enough at it, I definitely could improve.

cloud

Other Technologies

ADEQUATE

I have some experience with RabbitMQ as middleware for publishing and subscribing to topics. I have only used it in a limited capacity.

ADEQUATE

I have some experience creating dashboards with PowerBI in the past, though my experience is limited.