Skills
I am proficient in full-stack development using the JavaScript language. I am also proficient in some blockchain technologies, which are discussed in more detail below.
HTML
I have hands-on proficiency with HTML, ensuring to structure it with SEO best practices in mind and adhering closely to BEM conventions.
CSS
Areas such as selectors, properties, values, cascading, specificity, box model, layouts (including Flexbox and CSS Grid), media queries, and animations are within my realm of expertise.
Javascript
DOM manipulation, events and event listeners, asynchronous programming, error handling, API consumption, and other related areas are among my areas of expertise.
React
Components and props, state and lifecycle, methods, conditional rendering, React Router, higher-order components, and other related areas are areas where I possess expertise.
Bootstrap
I have hands-on experience in using Bootstrap. It speeds up my workflow, and I do not need to think of class names as they are already provided. This is one of my favorite CSS frameworks.
Tailwind CSS
I have recently started using Tailwind CSS in some of my personal projects and have really come to enjoy using it. Tailwind helps me keep my styling consistent.
Redux
I have hands-on experience with Redux. I like the fact that there is one centralized store for all my state. This makes tracking state easy via the Redux dev tools.
Node js
I enjoy using Node.js to spin up web servers with Express. I have also built many backend solutions with Node.js, both in a professional capacity and on personal projects.
Postman
I always use Postman as a go-to for testing my Express APIs before implementing them client-side. It is very helpful when trying to visualize how the client-side will work eventually.
Mongo DB
I am well versed in performing CRUD operations using MongoDB. Mongoose is the ORM I use when implementing these operations. I have been using MongoDB for the past 2 years.
PostGre SQL
I have used PostgreSQL on my last client project. I can also perform CRUD operations using PostgreSQL. I have more experience using it with the Sequelize ORM.
Ethereum - Solidity
I can understand Solidity smart contracts, test them on Remix, use Hardhat.js to deploy them, and Ethers.js or Web3.js to build a UI on the client-side. I can also use Truffle.
AWS
I have hands-on experience with AWS Cognito for user management, S3 for simple object storage, API Gateway, and Lambda for serverless function deployment and API management.
Firebase
I can use Firebase for authentication and user management. I use Firestore to perform CRUD operations. I have used Firebase in one of my latest personal projects called Bookworks (still a work in progress).
Recent Projects
FCC Pomodoro clock
This is one of five React frontend projects I built for the Free Code Camp Frontend Libraries certification. These projects make use of class-based components and lifecycle methods. In addition to this project, I also built a Random Quote Machine, Markdown Converter, Drum Machine, and a JS Calculator.
MERN Authentication
This is a MERN project using a Creative Tim template. I challenged myself to work with existing code bases. The project only has MERN functionality on the Authentication forms. In addition, I added some UI form validation with RHF and Yup on the auth forms. Redux has been used for state management, and auth forms include unit tests implemented with React Testing Library.
Flag app
This was a challenge on the Frontend Mentors challenge platform which can be found here. It is a React application that consumes an API provided by Frontend Mentors. The design file is also provided in PNG format. Features include consuming the API, a search bar to search for a country, and a filter bar to filter by region.
CSS Dashboard
This is a CSS dashboard challenge from a platform called The Odin Project. I wanted to practice my CSS skills and decided to take on this challenge. It is worth noting that this project is not mobile responsive. I plan to use it in a larger side project I am working on called Bookworks. This project was built using React.
Social Media backend
This is server side logic built with Node and Express js. This builds off the MERN authentication project above and forms part of a larger application I am working on (Bookworks). This will be the foundation of my social media NFT application.
Bookworks
On the client side I am using React and Tailwind. For form validation I am using RHF and yup. Redux is used for state management. I have two express micro services deployed to Render (a bit slow). The first service handles email validation via a code. The second is a Firebase update password service using the Firebase Admin SDK. Detailed features for the app can be found here. (Work in progress)
FCC Pomodoro clock
This is one of five React frontend projects I built for the Free Code Camp Frontend Libraries certification. These projects make use of class-based components and lifecycle methods. In addition to this project, I also built a Random Quote Machine, Markdown Converter, Drum Machine, and a JS Calculator.
MERN Authentication
This is a MERN project using a Creative Tim template. I challenged myself to work with existing code bases. The project only has MERN functionality on the Authentication forms. In addition, I added some UI form validation with RHF and Yup on the auth forms. Redux has been used for state management, and auth forms include unit tests implemented with React Testing Library.
Flag app
This was a challenge on the Frontend Mentors challenge platform which can be found here. It is a React application that consumes an API provided by Frontend Mentors. The design file is also provided in PNG format. Features include consuming the API, a search bar to search for a country, and a filter bar to filter by region.
CSS Dashboard
This is a CSS dashboard challenge from a platform called The Odin Project. I wanted to practice my CSS skills and decided to take on this challenge. It is worth noting that this project is not mobile responsive. I plan to use it in a larger side project I am working on called Bookworks. This project was built using React.
Bookworks
On the client side I am using React and Tailwind. For form validation I am using RHF and yup. Redux is used for state management. I have two express micro services deployed to Render (a bit slow). The first service handles email validation via a code. The second is a Firebase update password service using the Firebase Admin SDK. Detailed features for the app can be found here. (Work in progress)
About me
Fullstack Javascript Developer
I'm Kyle and I love building things on the web. Prior to web development I was a junior accountant. I decided to make the switch over to web development as I saw many businesses would be moving over into the digital space. I have always had a passion for digital business and am well-versed in e-commerce. I enjoy analyzing the strengths and weaknesses of online businesses and could spend hours scouring through e-commerce or crypto-related metrics. I am fully proficient in using the MERN stack and have experience with various other web technologies.
I decided to pursue web development as it would allow me to channel all the skills I have aquired into one domain. Blockchain dapp development is a path I strongly pursue as I am a firm believer in decentralized finance. Looking forward to meet you. Best, Kyle.
Professional Experience
Company: Techadon Technologies
Capacity: Junior Fullstack Developer
Start date: 14 February to 1 December 2022
Reference: Leon Mwandiringa
My role at Techadon was multifaceted, with responsibilities on the client-side that involved implementing features like Authentication using AWS Cognito and Amplify. The primary objective of the application was to utilize decentralized technologies such as ethers.js and leverage the Ethereum blockchain to create a decentralized wallet solution. The core of the web app focused on wallet-related functionalities, which included sending, receiving, and viewing the balance. As part of my duties, I was responsible for implementing these basic wallet functionalities.
In addition, I was tasked with building an admin dashboard to manage KYC submissions. However, what I enjoyed most about this task was implementing graphs using Chart.js and Apex Charts libraries. To populate these graphs with relevant data, I utilized data providers like CoinGecko and various other providers.
On the server-side, my responsibilities included persisting user wallet creation, user sending, and user transactions. To accomplish this, I used PostGreSQL and the Sequelize ORM. Additionally, I created KYC upload routes using Express and Node.js, and gathered market data. Furthermore, I worked on implementing logic that interacts with the Uniswap API and existing stablecoin smart contracts, such as USDT and DAI.