Scott Smalley

B.Sc. Software Engineering, UVU, Fall 2020

Hello! I’m a Software Engineering Senior with one class left at Utah Valley University. During my studies, I worked in retail using problem solving, critical thinking, business logic, and teamwork skills. For example, I saved a $40,000 customer order from being canceled through conflict resolution and quick problem solving. This experience gives me a unique perspective when building software. You get the full-circle view on how the business functions from numerous perspectives when working with a team resolving customer-facing, employee-facing, and corporate-facing challenges after six years. It's much easier to put yourself in the end-user’s shoes.

Every problem is a puzzle. Software Engineering pairs my passion for solving puzzles with an industry consisting of dynamic challenges to manage. What I’m looking for in a position is to help create, improve, or replace software solutions to better the lives of internal and external users. As part of my academic career I’ve had exposure to Java, C#, Python, SQL, HTML, CSS, JavaScript, MATLAB, R, D, SML/NJ, GitHub, and AWS services such as Lambda, API Gateway, CloudWatch, and RDS. I’ve created a handful of projects during my semester breaks using some of these technologies. Most recently I learned NodeJS, ExpressJS, MongoDB, and Heroku to build the backend of the application shown in the “TaskIt” tab. More information on the projects I’ve built is listed in the “Projects” tab. Thank you.

Click to download.

MyTwitches (Google Chrome Extension)

Technology: ES6 JavaScript
Twitch.tv custom chat filter. Allows the user to find key phrases in the chat log and inserts them into a secondary, custom chat log that shows up under the "Notifications" section.

Published on the Chrome Web Store! Link

Portfolio Website v2

Technologies: HTML, CSS, Bootstrap, JavaScript, jQuery, NodeJS, ExpressJS, MongoDB, JWT, and Heroku using Test Driven Development (TDD) during backend development.
My goal with this website update was to have one place for my links, resume, and projects. As part of the update, this website now contains a word-scramble game, and my "TaskIt" web app prototype. The scramble game is built using jQuery, and the TaskIt web app uses a RESTful API using NodeJS, Heroku, and MongoDB.

FlexPool RESTful API (Senior Capstone Group Project Contribution)

Technologies: C#, .NET Core 2.1, AWS Lambda, AWS ScheduledEvents, AWS RDS, and MySQL 8.0
The goal of the project was to find a real company who needs a software solution that could use our FREE services. In a team of three to five Software Engineering Seniors, find a prospective project and determine whether we can be of assistance. My team found a local company who could use a “labor pool” management solution. They wanted it to be available on mobile. No NDA’s or exclusivity clauses were necessary. My team broke down our project into front-end and back-end. I volunteered to be the back-end position, meaning the entire backend included in the GitHub link is my code. I used a Command design pattern in a RESTful solution to perform CRUD tasks. We developed a minimal viable product, but our project was shelved by the company due to COVID-19.

PunnettMe v2

Technologies: Java 10, JavaFX
My goal with PunnettMe v2.0 was to upgrade my previous PunnettMe iteration. The concept of the project is to make an application that can generate Punnett Squares for comparing two reproductive partners and the statistical chance of each combination of genetic outcomes. This upgrade allows for up to 10 traits to be compared at once. This way a couple who may have some genetic issues can see the chance that their child may have the trait. We used a Decorator Pattern to build the genetic traits. We rebuilt the front-end using JavaFX to replace the AWT/Swing libraries used before. This project is available for anyone to check out. There’s an executable JAR file in the GitHub repository.

About Me, Scrambled

Five words from the "About Me" section are scrambled.
Click the scrambled words to earn points!
(The game saves your score locally.)
Delete Game will delete any previous saved score.
Hint will reveal one scrambled word.

Click Play to begin!

TaskIt

TaskIt is a prototype task manager. The use-case is for a family or workplace to have a centralized area where they can post tasks for their household/employees that all members can see.

NOTE: I'm exposing certain security measures to show that they work. If this project was in production, you couldn't make yourself an admin user.

How it works:
  • Anyone can create and view tasks.
  • You must log in to edit tasks.
  • You must log in and be an admin to delete tasks.
  • For demonstration purposes, when you create a user, you can set whether it's an admin or not.
  • For now, you can't delete the users. Fighting off user-story creep.
  • Logins do not persist through sessions, so if you refresh, you’ll have to log back in.

Below I’ve listed two logins for users to play with. Notice if you don’t log in at all—you can’t modify anything? Try logging in each account and see what you can and can’t do. More information on how it works is listed in the Projects tab.

Regular Login:
Email: jdoe@gmail.com
Password: 12345

Admin Login:
Email: admin@admin.com
Password: 12345
Description Assigned To Actions
Retrieving tasks...