Preston Locke

Scan contact card

Scannable QR code with contact info

3rd year Computer Science major at Macalester College. I love learning new things, and as a result, I have a wide breadth of knowledge and experience that would serve any task and any team well.

Skills

Languages
  • C++
  • C
  • Python
  • JavaScript
  • Java
  • x86 Assembly
  • Dart
  • HTML
  • CSS
  • TypeScript
  • PHP
  • SQL
  • Bash
Frameworks & Libraries
  • Qt
  • Node.js
  • JQuery
  • Android
  • Flutter
  • Jest Unit Testing
Operating Systems & Tools
  • Linux
  • Windows
  • Git
  • Firebase
  • GDB
  • Makefile
  • Webpack
  • TravisCI
Programming Concepts
  • Data Structures
  • Algorithms
  • Object Oriented Programming
  • Finite-State Automata

Personal Projects

Chess

Project link: https://github.com/Preston12321/chess

  • Used JavaScript, JQuery, Sass, and various popular NodeJS packages to implement my own web-based chess game
  • Practiced packaging/translating code for production using Webpack and Babel
  • Learned the basics of unit testing while creating basic tests for core game logic

Read more..

QNotPad

Project link: https://github.com/Preston12321/QNotPad

  • Used Qt C++ to create a basic text editor modeled after Notepad on Windows
  • Implemented file I/O and learned about conversion between different text encodings

Read more..

CPUID

Project link: https://github.com/Preston12321/cpuid

  • Used C++ and x86 Assembly to create a terminal application that reads CPU details
  • Learned to read large documentation manuals to understand a complex API
  • Practiced interfacing between low-level and high-level languages

Read more..

Collaborations

Password Manager

Project link: https://github.com/Preston12321/password-manager

  • Used Qt C++ to create a password manager with an auditory mechanism for password strength feedback
  • Optimized algorithm for substring checking of entered passwords against popular password dictionaries
  • Implemented integrity-checking during the decryption of the password database

Read more..

A* Algorithm Visualization

Project link: https://github.com/Preston12321/pathfinding

  • Used Python to create a cell-based step-by-step visualization of the A* Algorithm
  • Collaborated with group members to implement drawable obstacles and run/clear buttons

Read more..

PotLuck

Project link: https://github.com/mariecrane/PotLuck

  • Used Flutter, a Node.js backend, a Firestore NoSQL database, and a JSON-based REST API to create a social ingredient-tracking recipe search app
  • Coordinated the Agile development tasks of the team throughout the semester
  • Designed an application architecture that left room for redesign, scalability, and future additions

Read more..

Experience

Teaching Assistant - Computer Security and Privacy

Macalester College

  • Assist students with problem-solving, debugging, and testing code
  • Grade and provide constructive feedback for assignments written in C and Python
  • Maintain familiarity with common exploits that require knowledge of HTML, PHP, SQL, and JavaScript

September 2020 - Present

Teaching Assistant - Computer Systems Organization

Macalester College

  • Assisted students with problem-solving, debugging, and testing code
  • Graded and provide constructive feedback for assignments written in C and Assembly
  • Developed Bash and Python scripts used in future assignments

September 2019 - May 2020

Education

Macalester College

Bachelor of Arts
Computer Science - 3.8 GPA

3.7 GPA Overall

2018 - Present

Millsap High School

High School Diploma
Top 10% of Graduating Class

4.0 GPA

2014 - 2018
Nifty tech tag lists from Wouter Beeftink