Skills

I am most experienced in frontend web development, with backend express.js being the second best. I have built a solid foundation by learning many things from C# to Kotlin and experience with web development, allows me to gain skills that can translate from mobile to desktop. Lately have been paying attention to mistakes with architecture and design problems in my applications!

Programming

JavaScript

The first programming language I learned. I would say this is the language i'm most proficient in using, and prefer to use just because of the familiarity of the syntax and my understand of the underlying structure of the language. As a result of this being my first language, I learnt many features that are javacript specific like hoisting, event loop and even its prototype inheritance system(OOP for Javascript).

Kotlin

I learned this language for development in Android Applications,I've gotten better at it recently due to learning springboot with it allowing more opportunities to use just kotlin. I understand coroutines, map and sets but still trip up on syntax sometimes!

Java

I have a little proficiency with java, the main reason is I don't use it as often for projects and I couldn't really find any advantages of the language compared to others. Initially I learned javaFx, but even that seemed outdated. My current opinion of the language is that its useless outside of an corporate back-end development environment. When I first learned this language I was interested in implementing an artificial neural network, but I later realized I should of just learned python or went with C/C++. It might not be a total lost cause, because I might run into kotlin in the future

Frontend

React.js

When first learning things like javascript, html and css I still couldn't understand how some of my favorite sites used their data in a flexible manner. Learning react and how it takes things beyond the simple static website by saving the trouble of creating elements with vanilla javascript really opened my eyes! I can use the core features like life cycle(useEffect) and controlling state(useState) without looking at things like documention.

Next.js

Not much to take away from next.js because its used to simplify things I've already done before like structuring my routing. The concept of being able to divide server side and client side rendering on some react components to allow for better seo is outputs the number reason this would be my go to framework. I've used alittle of the api feature but still prefer creating my api myself using a back-end framework like express.

Tailwind CSS

I would use tailwind css over css anyday just because of the speed I can implement most things. When first learning I thought it made the code to long, but once you really understand the words for the properties, and the abiility to not have to create new ids or classes for elements it looks way more structures

Vue

This is the main testing library that comes with next.js application so I learned it. I previous knew testing with react and jest, but I understand basic syntax for this also. I have experience using this for test driven development in my article craft project

Compose

This is the main library used when created Mobile Applications. Learned it mainly because it's what used when learning android development through Google Android development course.

MaterialUI

Mainly used when recreating the ui for my first project, the notes application, feel comfortable with it due to similar principles as Compsoe

Cypress

This is the main testing library that comes with next.js application so I learned it. I previous knew testing with react and jest, but I understand basic syntax for this also. I have experience using this for test driven development in my article craft project

Backend

Node.js

I would say node.js is one of the key tools, but I don't want to use this section to talk about things like express, or mongoose. I would rather talk about my understanding of nodes built in modules and features. I've got some experience with the fundamentals like implementing my own streams(readable or writable) and sending buffer data across it. Worked with Event emitters, learned about binary data and went into networking layers.

MongoDB

This my go to for database, especially because I can easily set up an database on the cloud with mongo atlas. I personally like to use the mongoose framework , and haven't used just regular mongodb in months. I can connect documents and even add subdocuments with ease.

MySQL

I recently learned this due to working with springboot and some due to android data persistence library ROOM. I can understand the queries and how to connect difference schema building complex data.

Springboot

Express.js

Tools

Git

I know how to branch off my work, add,commit and push to github. Not much to put here

Figma

I have learned wireframing using figma, and turning that wireframe into a real-world project

AWS

Canvas

Jira

Github Projects