COLUMN
RESERVED FOR A
SPECIAL CSS ANIMATIONS PROJECT
CHECK BACK SOON!
Hi, I'm Rayvin

A Passionate Full Stack Software Developer. May 2023 graduate of Tennessee Tech University with a Bachelor's degree in Computer Science.

Implementation Consultant at Fast Enterprises

JUMP TO PROJECTS VIEW RESUME
VIEW RESUME
ABOUT ME

My passion for creating things from scratch has inspired me to pursue a career in computer science. In my free time, I enjoy creating smooth, responsive, and engaging animations, user interfaces, and user experiences.
Proficient with HTML, CSS, and JavaScript and can use these technologies to convert design wireframes into functional websites with animations and responsive design.
I have a strong commitment to continuous learning, always seeking opportunities to expand my skill set and stay ahead in the ever-evolving field of computer science.




SKILLS &
TECHNOLOGIES
HTML | CSS | SCSS | JAVASCRIPT | JQUERY | TAILWIND | BOOTSTRAP
Ability to use these to convert design wireframes into functional websites with animations and responsive design. This portfolio website is built using only HTML, CSS, and JavaScript, allowing me to fully customize every aspect to my liking.
C | C++ | JAVA | PYTHON
I have used C++ and Java for most of my university courses. Code available in Projects section. Used for data structures, OOP with Java, algorithms, networks
REACT JS | NEXT JS | FRAMER MOTION
I have created a sample e-commerce app. Live demo in Projects section.
NODE | EXPRESS
Ability to use NodeJS to handle routing and server side rendering. As well as create and communicate with REST APIs
MONGO DB | MONGOOSE | NOSQL | SQL
Ability to create and manage databases to store and retrieve data.
REST | CRUD APIs
Ability to create REST API methods and interact with external APIs
AUTHENTICATION & SECURITY
Ability to create users and perform logins, salt/hash passwords with bcrypt, implement sign-in with Google, etc
GIT | GITHUB | AGILE
Ability to collaborate with teams and adapt to changes. Two semesters of Software Engineering focused on Agile Software Development. We created projects in teams.
NETLIFY | HEROKU
Ability to deploy websites live.
EXPERIENCE &
RELEVANT
COURSEWORK
SOFTWARE ENGINEERING I
Course covers process models, agile methods, requirement analysis, design, testing, usability, configuration management and project management.
SOFTWARE ENGINEERING II
Course covers advanced agile methods, advanced testing concepts, deployment and maintenance. Includes significant senior collaborative design experience.
DATA STRUCTURES AND ALGORITHMS | C++
Abstract data types and fundamental data structures including stacks, queues, and trees; algorithms to search, sort, and manipulate data using such structures; and introduction to runtime analysis.
OBJECT-ORIENTED PROGRAMMING AND DESIGN | JAVA
Theory and practice of object-oriented programming and design. Encapsulation, inheritance, dynamic binding, and polymorphism; and introduction to UML and design patterns.
DESIGN OF ALGORITHMS | C++
Advanced data structures and applications, problem solving strategies, heuristics, and complexity of algorithms.
DATABASE MANAGEMENT SYSTEMS
Organization and management of large data files; data definition; database models; query languages; crash recovery; concurrency control; and case studies.
PROFESSIONALISM, COMMUNICATION AND RESEARCH IN COMPUTING
Social, ethical, and career aspects of computing. Written, oral, and audio-visual communication in computer science; presentation techniques, report preparation, and technical correspondence. Introduction to research in computing.
COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE PROGRAMMING | x86 ASSEMBLY
Computer organization and architecture; machine language; and assembly language programming techniques.
FOUNDATIONS OF COMPUTER SCIENCE
Application of discrete structures to model computational processes; techniques for analysis of algorithms; and automata and concepts of language theory.
COMPUTER NETWORKS | C, C++, PYTHON
Data communications and computer networks; network models and protocols; local area networks; and data security.
OPERATING SYSTEMS
A historical perspective of operating systems; overview of modern systems; processor, storage, and process management; virtual memory; deadlocks; concurrent processing and programming; protection; and case studies.
COMPUTER ARCHITECTURE
Computer Systems, the CPU, the control unit, microprogramming, parallel organization, and RISC architectures.
WEB PROGRAMMING | JS, HTML, CSS, CRUD
Development of web applications with client and server-side technologies. HTML, CSS, javascript, Bootstrap, jquery, REST APIs.
SOFTWARE & SYSTEMS SECURITY | C
Introduction to the characteristics and practices of secure programming, approaches used in the development and deployment of secure web applications, and security assessment of software systems.
READ MORE
ECOMMERCE
REACT JS | NEXT JS | MONGO DB
I am currently learning and practicing React by building an ecommerce website. I am using this project to familiarize myself with state management, hooks, and passing props in React.

I have been using a trial and error approach to solve problems and am gaining a better understanding of the benefits and use cases for React hooks and Redux.

Update:
I am designing the website using plain HTML, CSS, and JavaScript, and have recently converted the project to use the NextJS framework for server-side rendering and file system routing.


DEMO
READ MORE
SMART CHICKEN COOP
JS | HTML | CSS | CRUD | REST API | IoT
SCENARIO
"The Simple Farm is prototyping a connected, smart Chicken Coop. To assist with this project, they have hired you to build a modern, responsive web interface for their product. You are competing against each other to provide the best solution. You will need to create groups of three."

MY PART
Collaborated on a team project using HTML, CSS, JS, jQuery, and Bootstrap to create a user account system and dashboard for customizable chicken coop settings, including automatic light, heater, and fan control. Implemented Chart.js for temperature and humidity data visualization.





READ MORE
COURSE EXPLORER
JS | HTML | CSS | REST API
The course explorer is a web application designed with HTML, CSS, and Bootstrap that utilizes an API containing several years worth of detailed information about courses offered at Tennessee Tech University.

Utilized HTML, CSS, Javascript, jQuery, and Bootstrap to create a tool that allows users to filter and search for specific courses at Tennessee Tech using an API. Allows users to view busy days and times on campus or for specific rooms, and estimate parking space availability.





READ MORE
DESIGN OF ALGORITHMS
C++
THE PROGRAM
Designed and implemented algorithms for finding minimum spanning tree and shortest paths using Prim's, Kruskal's, and Dijkstra's approaches in C++.

Created custom data structures including stack, queue, and linked lists for use in depth first search and breadth first search on a graph implemented with adjacency matrix and adjacency list.


PRIM'S ALGORITHM
A greedy algorithm that finds a minimum spanning tree for a weighted undirected graph. This means it finds a subset of the edges that forms a tree that includes every vertex, where the total weight of all the edges in the tree is minimized.


KRUSKAL'S ALGORITHM
Finds a minimum spanning forest of an undirected edge-weighted graph. If the graph is connected, it finds a minimum spanning tree. It is a greedy algorithm in graph theory as in each step it adds the next lowest-weight edge that will not form a cycle to the minimum spanning forest.


DIJKSTRA'S ALGORITHM
An algorithm for finding the shortest paths between nodes in a graph, which may represent, for example, road networks.


VIEW CODE
READ MORE
MASTERMIND STRATEGY GAME
JAVA
I implemented the classic code-breaking game Mastermind using object-oriented programming principles in Java.

WHAT IS MASTERMIND?
Mastermind is similar to the pencil and paper game Bulls and Cows, which has been around for over a century.

THE PROGRAM
For this program, a secret code is selected by one player and another player tries to guess the code. The secret code has four positions and each position is assigned a color out of seven possible colors. It is legal to have multiple positions assigned the same color. In this version of Master Mind, the computer selects the secret code randomly.

To win the game, the player must determine the correct position and color for each position of the randomly generated secret code. A guess is composed of selecting a color for each of four positions. After each guess, feedback is obtained which is used to improve the guess until an exact match of each color and position of the secret code is obtained. The secret code must be obtained in eight or fewer guesses.

FEEDBACK IS DETERMINED AS FOLLOWS
1. A black "button" is awarded for each of the four guess elements that matches both color and position of the secret code.
2. A white "button" is awarded for each of the four guess elements that matches a color but is not in the correct position.
3. A guess element can be awarded at most one button (may be tricky).
4. It is likely that a given guess will have fewer than four (and maybe zero) buttons awarded.


VIEW CODE
READ MORE
VSCODE CHAT DEBUGGER
NODE | EXPRESS | API | AGILE TEAM
• Developed a chatbot debugger using the StackExchange API, NodeJS, and ExpressJS.
• Hosted the chatbot on Heroku and managed the project using Gitlab in an agile environment.
• Created the chat interface using HTML, CSS, and JavaScript, and implemented the backend with NodeJS and ExpressJS, utilizing socket.io for real-time communication.

TOOLS
StackExchange API
NodeJS
ExpressJS
Heroku
Gitlab
Agile Environment (Team of 5)

FEATURES
1. Chatbot Website - A website hosting the chatbot that searches StackExchange for solutions to errors that a user might have with their programs.

2. Chatbot Extension in VSCode - An extension that has the website built into it so that users do not have to go to a separate browser and leave their work environment.

3. Conversational Chatbot - Be able to talk to the chatbot using natural language in order to seamlessly interact with it and get the solutions.

SOFTWARE ARCHITECTURE
The Chatbot Extension is built with an extension framework in Microsoft Visual Studio Code.

The chatbot is on a website hosted by Heroku and the website is displayed in VSCode so that the user doesn't have to leave their code.

The chatbot's responses are generated by the Natural Language Processing Model or NLP for short. The user gives the error they're experiencing and the chatbot parses out keywords and sends them to its search engine which is powered by StackExchange.

StackExchange finds the best solution, sends it back to the chatbot, which displays it to the user via its interface.