Resumé

Jump to: Education | Technical Skills | Programming Languages & Projects | Employment History

Education

University of Massachusetts Boston
Boston, MA
Master of Science: Computer Science

September 2024 - Present


University of Massachusetts Boston
Boston, MA
Bachelor of Science: Computer Science (Summa Cum Laude)
GPA: 3.782

September 2021 - May 2024


Community College of the Air Force (CCAF)
Associates in Applied Science: Criminal Justice

February 2015 - October 2020



Accomplished Graduate Courses: Artificial Intelligence, Analysis of Algorithms, Database Management Systems

Accomplished Undergraduate Courses: Compilers, Computer Games Programming, Introduction to Software Engineering,
Operating Systems, Internetworking, Structure of Higher Level Languages, Introduction to the Theory of Computation,
Computer Architecture and Organization, Advanced Data Structures and Algorithms, Intermediate Computing with Data Structures,
Social Issues and Ethics in Computing, Linear Algebra, Programming in C, Applied Discrete Mathematics, Introduction to Computing

In Progress Graduate Courses: Theory of Formal Languages, User Interface Design, Database Application Development, Object-Oriented Design and Programming




Jump to Top of Resumé

_____________________________________________________________________________________________________________________________________________

Technical Skills

Platforms: Linux, Windows 10/11, UNIX

Programming Languages: Assembly Language, C, C++, C#, HTML/CSS, Java, JavaScript, Python, Racket, SQL

Skills: Object Oriented Programming

Development Tools: Visual Studio Code, IntelliJ, Pycharm, Unity, DrRacket

Additional Skills: Microsoft Office: Word, Excel, Access, Outlook; Teamwork; Leadership;
                              Multitasking; Attention to Detail; Eagerness to Work and Learn


Jump to Top of Resumé

_____________________________________________________________________________________________________________________________________________

Jump to Language: Assembly Language | C | C++ | C# | HTML/CSS | Java | JavaScript | Python | Racket | SQL

Programming Project Descriptions

Below is a list of past programming assignments I've completed with descriptions (languages listed in alphabetical order). If you are an employer who has receieved a formal resumé, you may use the provided password to access the Projects page and view the code of listed assignments:

Jump to Top of Resumé

__________________________________________________________

Assembly Language

2023:

Computer Architecture and Organization:
-Echo.s, a program which outputs a given input string ("echoes" the string).

-Strncpy.s, a program which is a C-callable function that copies a given string.

-Count.s, a program which counts the number of occurrences of a character in a string.



Jump to Programming Languages

__________________________________________________________

C

2023:

Operating Systems Course:
-Two programs: raid.c and diar.c. Raid.c performs RAID 2 encoding (utilizing Hamming(7,4) code) of a given '.txt' file accepted as
a command-line argument. Instead of separating the 7 bits into 7 different discs, we simulate the discs as 7 different .txt output files.
Diar.c performs the decoding of the RAID 2 encoding; the program accepts the name of the original file which got split into 7 different
files, and recreates the contents of the original encoded file based on its separated counterparts.

-Bsh.c, which is a "shell" program (bsh stands for Boston shell). Intended to work like classic sh and bash. There was a base-code
given for this program, I was tasked with implementing the commands for: env, setenv, unsetenv, cd, pwd and history.

Computer Architecture and Organization:
-The C programs for this course are unfortunately lost, however I gained experience with embedded programming using Arduino hardware.

2022:

Programming in C:
-Multiple basic C programs involving learning the language, the most complex of which involved learning to use C structures.



Jump to Programming Languages

__________________________________________________________

C++

2024:

Learn C++ Course CodeCademy Certificate: Learn C++ Course



Jump to Programming Languages

__________________________________________________________

C#

2024:

Learn C# Course CodeCademy Certificate: Learn C# Course

Computer Games Programming:
-Created a small Roguelike game using the Unity game engine. The game has one playable level and was
coded entirely in C# using various scripts, from the player and enemy controller scripts to music controlling
scripts, pause/level-up/title/gameover menu scripts, and various UI scripts. All of these scripts as well as a
link to download the game (currently Windows only) is available on my projects page.



Jump to Programming Languages

__________________________________________________________

HTML/CSS:

2024:

This website was coded entirely using a mixture of HTML, CSS and JavaScript.

Build a Website with HTML, CSS, and GitHub Pages CodeCademy Certificate: Build a Website with HTML, CSS, and GitHub Pages

Introduction to Software Engineering:
-Worked in a group with six other programmers to design a website named UPositive for a client. The main purpose
of UPositive was to provide a sense of joy to those who share common interests and hobbies, as well as a subscription
service that would surprise the subscribers with a happy gift at some random point each month. A link to a video tour
of the website can be found in my projects page.



Jump to Programming Languages

__________________________________________________________

Java

2024:

Compilers Course:
-Developed a compiler in Java for a non-trivial subset language of Java (called j--).

-GenIsPrime.java, a class which programmatically generates the class file for the class IsPrime.

-j--.jj, the input file to JavaCC for generating a scanner and parser for j--.

-Parser.java, a recursive descent parser that, given a lexical analyzer (a LookaheadScanner), parses a j-- compilation
unit (program file), taking tokens from the LookaheadScanner, and produces an abstract syntax tree (AST) for it.

-Scanner.java, a lexical analyzer for j--.

-TokenInfo.java, a series of token kinds.

2023:

Internetworking Course:
-Two programs: HW1Client.java and HW1Server.java, where the client accepts the host and server port number
as input to connect to the server program; and the server program accepts the port number of the proxy server as input to successfully
connect to a website and download a file.

Advanced Data Structures and Algorithms:
-DynamicSubsequence.java, which accepts an array of integers as input and outputs the maximum length subsequence of the numbers.
Example: 0 8 4 12 2 10 6 14 1 9 5 13 3 11 7 15 would yield the output 0 4 6 9 13 15.

-MoveToFront.java, which performs either move-to-front encoding or decoding based on a char's ASCII value. Accepts either '+'
(decode) or '-' (encode) as an input argument, followed by a '.txt' file which is either encoded or decoded.

-DegreesOfSeparationBFS.java, which accepts a '.txt' file as input that contains movie names with corresponding actors, a delimiter
(say, '/' if that is how the .txt file is organized) an actor's name as the "center" (say, Kevin Bacon, accepted as "Bacon, Kevin") and
another actor's name in the same format where we want to see how far away they are from our actor at the center.
Example: with Kevin Bacon as our center, Nicole Kidman's "Bacon number" is 2.

-Three programs: Usage.java, LineUsage.java and LineReport.java. LineReport.java accepts a '.txt' file as input which contains the
information regarding the usage of 500 terminals in a computer lab, and which user was logged into which terminal at different times.
LineReport.java outputs a report of the terminal number, the user who used that terminal the most, and the count of how much that
user used the terminal. Usage.java is a simple class which is used to hold a username and its corresponding count, and LineUsage.java
is a class which holds all the data needed for a particular terminal.

2022:

Intermediate Computing with Data Structures:
-Multiple basic Java programs involving learning the language, and learning various data structures such as: Symbol Tables, Heaps,
Graphs, Binary Search Trees, Linked Lists, Queues, etc.



Jump to Programming Languages

__________________________________________________________

JavaScript

2024:

This website was coded entirely using a mixture of HTML, CSS and JavaScript.

Learn JavaScript Course CodeCademy Certificate: Learn JavaScript Certificate

Introduction to Software Engineering:
-Worked in a group with six other programmers to design a website named UPositive for a client. The main purpose
of UPositive was to provide a sense of joy to those who share common interests and hobbies, as well as a subscription
service that would surprise the subscribers with a happy gift at some random point each month. A link to a video tour
of the website can be found in my projects page.



Jump to Programming Languages

__________________________________________________________

Python

2024:

Artificial Intelligence:
-Worked in a group with six other programmers to implement a Machine Learning Model to predict Alzheimers Disease in
patients with certain information about their medical history. Our model has a Neural Network architecture, with an accuracy
of 85% towards correctly predicting whether or not a patient had or did not have Alzheimers Disease.
Note: this is based strictly on a medical dataset we acquired of anonymous patient data, and we found no correlation between
features within our dataset. Meaning, our model was accurate to the dataset, but this does not necessarily mean we would be
able to accurately predict any random person for having Alzheimers, due to how little is known about the disease.

Database Management Systems:
-Python program to access an Oracle database and perform queries against the database using SQL and the Pandas Library.

-Python program to access an Oralce database and perform queries against the database using SQL and Cursor.

2021:

Introduction to Computing:
-Multiple basic Python programs which involved setting the foundation in learning how to program, the most complex of which dealt
with object oriented programming.



Jump to Programming Languages

__________________________________________________________

Racket

2023:

The Structure of Higher Level Languages:
-hw9.rkt: translated a given SimpleJS function into LambdaJS.

-hw8.rkt: involved correctly implementing effectful operations.

-hw7.rkt: involved correct usage of memory management, working with handles and given memory frames.

-hw6.rkt: implemented the evaluation of expressions and terms using a mutable environment.

-hw5.rkt: implemented the substitution operation, evaluation of expressions using substitution and evaluation of
expressions using environments for a given AST.

hw4.rkt: involved correctly implementing infinite streams and finite streams as sets.

hw1.rkt, hw2.rkt, hw3.rkt: basic programs learning the functionality of the language.



Jump to Programming Languages

__________________________________________________________

SQL

2024:

Database Management Systems:
-Many basic SQL programs involving inserting data into tables and extracting data based on specific queries.



Jump to Programming Languages


Jump to Top of Resumé

_____________________________________________________________________________________________________________________________________________

Employment History

Paul English Applied Artificial Intelligence Institute, University of Massachusetts Boston, Boston, MA

September 2024 - Present

Graduate Assistant: Collaborated in the planning and execution of educational programs, workshops,
and symposiums to promote AI awareness and engagement across diverse student and faculty groups.
Supported strategic event logistics, manage communications and assist in developing resources to foster
interdisciplinary involvement and discussion in AI topics.

Senior Airman, United States Air Force, Seymour Johnson AFB, NC

February 2015 - February 2021

Standardization and Evaluations Evaluator: Responsible for evaluating personnel on their job
performance to ensure proper qualifications and requirements were met. Inspected many programs
within the unit so that compliance was successful with USAF standards.

December 2019 - February 2021

Desk Sergeant/Alarm Monitor: Responsible for command and control of responding police forces.
Ability to dispatch police forces while maintaining command over multiple high-risk situations; unparalleled multitasking.

June 2019 - February 2021

Security Forces Armorer: Ensured the security and meticulous accountability for hundreds of weapons systems.

November 2017 - February 2019

Security Forces Patrolman: Responded to several high-risk situations, honed years of experience working with the public.

November 2017 - February 2021

Installation Entry Controller: First line of defense for the installation, ensuring security of up to hundreds of millions
worth of aircraft equipment as well as civilian and on-base personnel.

February 2016 - February 2021





Jump to Top of Resumé

Thanks for stopping by!

Email: steven.dodge.carr@gmail.com

My LinkedIn