Skills and Background
Click on each skill to learn more!
Java
I started learning Java in my last year of college. C++ was the main language we used, so I would go back and re-do/re-figure out my projects in Java. This gave me a very good base understanding of the language. I continued to expand my knowledge of Java, using it for two years at my previous role at [24]7.ai. During this time, I demonstrated my deep understanding of the language by obtaining an Oracle Certified Associate - Java SE 8 Programmer Certification in September 2023.
C++
C++ was the language of choice at my college, leading me to use it in almost all of my classes for the four years I was there. Throughout those four years, I continued to improve not only my C++ skills but also my overall programming skills, which have helped me in any language I choose to write in. While I have not yet used C++ professionally, I believe that I will still be able to utilize this language at a high level of skill.
JavaScript
JavaScript is something I used to experiment with for years, making Discord bots here and there. However, it wasn't until last year that I decided it was time to actually learn the language. I have been studying it for a while and feel confident in my ability to perform well in this language.
TypeScript
I have a strong foundation in JavaScript, having used it for a year, and I am currently in the process of transitioning to TypeScript. My journey with TypeScript has involved gradually incorporating its features into my projects, enhancing code quality and maintainability through static typing and advanced type definitions. This transition has improved my ability to catch errors early and develop more robust applications.
Python
Python is another language that I started learning in college. At the time, I only really knew C++, and I wanted to expand my knowledge to other languages. Because of this, I decided to take my Artificial Intelligence course using Python instead of C++, like most of the class was using.
React.js
I have been actively learning React.js and applying my knowledge to build a website, showcasing my growing proficiency with this powerful JavaScript library. Through hands-on experience, I have become familiar with React's core concepts such as components, state management, and hooks, enabling me to create dynamic and responsive user interfaces. This project reflects my ability to leverage React.js to develop modern web applications.
Next.js
I have been actively learning Next.js and applying my knowledge to build a website, demonstrating my growing proficiency with this versatile React framework. Through practical experience, I have become familiar with Next.js features such as server-side rendering, static site generation, and API routes. This project showcases my ability to leverage Next.js for creating highly performant and SEO-friendly web applications.
TailwindCSS
I have been actively learning TailwindCSS and applying my knowledge to build a website, highlighting my growing proficiency with this utility-first CSS framework. Through hands-on experience, I have become adept at using TailwindCSS to create responsive and visually appealing designs with minimal custom CSS. This project illustrates my ability to efficiently style web applications using TailwindCSS, enhancing both development speed and design consistency.
Jenkins
This is a skill that I developed over the course of my tenure at [24]7.ai. Jenkins was the CI/CD tool of choice for my team. During my time there, I used Jenkins almost every day, which mostly involved running already built Jenkinsfiles but also included improving the workflow or writing whole new workflows for new projects from scratch.
Apache Maven
I often use Maven to build any Java project I am working on. It was also the build tool used at my previous company, [24]7.ai. I have extensive knowledge in Maven for updating and creating POM files.
Git
I have been using Git for various projects, both professionally and personally. I started using Git in college, giving me seven years of experience using it.
GitHub
I started using GitHub back in college for hosting my various projects. I have been exploring GitHub more and more as time goes on, which led me to learn GitHub Actions and various CI/CD practices from there. I recently received a Career Essentials in GitHub Professional Certificate in May 2024.
Jira
I have a solid two-year background in using Jira, gained from my previous job where it was integral to our workflow. During this period, I consistently utilized Jira to track every story, ensuring all project tasks were meticulously documented and monitored.
Agile Development
I have a robust understanding of Agile development, which I first learned during my final year of college. Over the past two years at [24]7.ai, I applied Agile methodologies extensively, participating in sprint planning, daily stand-ups, and retrospectives. My experience includes collaborating with cross-functional teams to deliver iterative improvements, ensuring flexibility, and continuously aligning project outcomes with customer needs.
SQL
I started learning SQL about halfway through my college career, which gave me time to familiarize myself with the language before utilizing it at my previous job with [24]7.ai in a MySQL environment. While I only have professional experience with MySQL, I have a strong understanding of the fundamentals and am confident that I can utilize these skills in any SQL database type.
Apache Kafka
I started using Kafka about two years ago when my company at the time needed it for a project. I spent a significant amount of time learning as much as I could about Kafka, so I knew exactly how I wanted to build the project. The project was heavily dependent on Kafka, and it was the first project I took from conception to production.
Spring Boot
Spring Boot is a skill that I started learning a little over a year ago to expand my knowledge of Java. While I have not yet had the chance to use it professionally, I really like the framework and believe that it can be used to improve many codebases, even if just on a boilerplate level.
Multithreading
Multithreading is a skill that I started learning in college, giving me a strong understanding of the fundamentals of multithreading and the specifics of multithreading in C++. I was able to successfully utilize my strong knowledge of multithreading to help create a complex multithreaded application in my previous role at [24]7.ai.