Luke Tingley
Software Developer and ML Engineer

“In theory, there is no difference between theory and practice. But, in practice, there is.” - Yogi Berra

About Me

Technologies

Experience

Personal Projects

back
Me

Hi! My name is Luke. I am a 22-year-old master's student, software developer, and ML enthusiast. I was born and raised in San Francisco, but I've since made my home in the great city of New York.

Education

I graduated magna cum laude from Bowdoin College with majors in Economics and Computer Science. I now attend Columbia University where I am getting my master's studying CS and ML.

Values & Mission

Technological innovation has always been at the forefront of creating meaningful change, and software engineering is my avenue for contributing to that progress. I am dedicated to creating impactful products that solve real-world problems.

Personal Interests

Adhereing to the software engineer stereotype, I am very into rock climbing. I am also passionate the bassoon, composing music, and doing theatre.

back
Python

Preferred language. Most of my projects are written in Python, including my ML projects.

Java

Very proficient in Java from coursework and Voxyl (see projects section).

C

Proficient in using C from coursework, CS research, and Monsiv (see projects section).

C++

Familiar with C++ from my CS research and competitive programming.

JavaScript

I have experience in Node.js from my work at Tract and creating Discord bots.

SQL

I have used SQL for a large portion of my coursework as well as Voxyl (see projects section).

PyTorch

All of my machine learning coursework and personal projects are done using PyTorch.

Git

I have used Git for many of my classes, Tract, and Voxyl.

back
Tract

TRACT specializes in comprehensive human risk intelligence, reviewing records across criminal, legal, financial, and social media databases to offer real-time, intelligent background checks.

Contributions:

  • Created tools facilitating the collection, processing, and managing of data related to employment and education history, legal records, political contributions, article coverage, social media, and more.
  • Designed and implemented complex cross-referencing systems to verify the accuracy of gathered data.
  • Rewrote the entire JS backend of the platform’s flagship background checking service in Python, significantly reducing the codebase size while making it cleaner and easier to maintain.
  • Developed machine learning models for investment risk analysis that identify potential red flags and improved the accuracy of a key model by 15%.
  • Utilized natural language processing for sentiment analysis on social media data to generate insightful online presence profiles.
  • CS Research

    Over the summer of 2022, I was awarded a Student Faculty Research Grant Fellowship to research graphical interpretations and expansions of the Linear Influence Game (LIG) model of computational game theory.

    General influence games are graphical games in which each agent’s payoff is determined solely by the influence of other agents. LIGs are a subset of general influence games where the influence is linear. The challenge is efficiently calculating Nash equilibria of games with many agents, such as Congress.

    Contributions:

  • The most recent literature on LIGs only allows for binary behavior. Our model expands on previous work to allow for efficient polynomial Nash equilibria calculation with a multiplicity of behavior in games with tree graph structures as well as a continuum of behavior in games with path structures.
  • Improved the time complexity of a S.O.T.A. algorithm and developed a program to automate the calculations.
  • back
    Voxyl Network

    Voxyl Network is a Minecraft server and business that I co-developed over the past 2 years, culminating in over 120,000 lines of code and 2.3 million unique players. My work included: developing the game and its anti-cheating service in Java; designing, implementing, and maintaining databases in SQL; optimizing and monitoring server performance to identify and resolve bottlenecks; and leading a team of more than 50 content moderators and game administrators.

    LobsterQ

    A high-frequency trading AI that uses limit order book data to predict short-term price movements of stocks. The AI employs a custom neural network and double deep Q-learner. It achieved 65% OOS accuracy on the millisecond level and 53% OOS accuracy on the second level, leading to 21% average daily returns without trading costs. Unfortunately, the AI doesn't work in practice due to bid-ask spread losses.

    TorchRing

    A distributed neural network training architecture for PyTorch models that prioritizes fault tolerance, scalability, and graceful recovery from failures. It utilizes a ring topology for efficient communication and message passing, allowing for improvements in system performance and stability without a single point of failure. TorchRing is able to dynamically balance computational load among nodes based on their performance, minimizing the impact of stragglers on overall training time. It also allows for dynamic allocation and deallocation of machines during training.

    Monsiv AI

    Monsiv is a simple, fast-paced, chess-inspired game with only 10 pieces and the objective of taking the opponent's king or reaching the other side of the board. The game was coded in Python with the PyGame library. The AI was made in C using game tree search with a custom implementation of the minimax algorithm and alpha–beta pruning. The AI is optimized using threading, transposition tables, iterative deepening, move ordering, optional greedy heuristics, and more.

    Othello AI

    An implementation of Othello and an AI to play it. The AI has achieved very strong performance, beating the top minimax bot on eOthello. It uses AlphaZero-style self-play reinforcement learning, leveraging MCTS with a neural network to evaluate states rather than simulation. It was trained over hundreds of sequential generations, each improving through self-play. In addition, I developed a minimax agent with a state evaluation heuristic for benchmarking and a GUI for playing against the AI.

    Discord Bots

    Coded a Python Discord bot using Discord.py and maintain two Node.js bots that use Discord.js. This is a side project intended to make QOL improvements for players and staff of Voxyl Network. It includes fun games and activities for players, support tickets using SQL, and integration with Minecraft for remote moderation and management purposes.

    About Me

    Technologies

    Experience

    Personal Projects

    back
    Me

    Hi! My name is Luke. I am a 22-year-old master's student, software developer, and ML enthusiast. I was born and raised in San Francisco, but I've since made my home in the great city of New York.

    Education

    I graduated magna cum laude from Bowdoin College with majors in Economics and Computer Science. I now attend Columbia University where I am getting my master's studying CS and ML.

    Values & Mission

    Technological innovation has always been at the forefront of creating meaningful change, and software engineering is my avenue for contributing to that progress. I am dedicated to creating impactful products that solve real-world problems.

    Personal Interests

    Adhereing to the software engineer stereotype, I am very into rock climbing. I am also passionate the bassoon, composing music, and doing theatre.

    back
    Python

    Preferred language. Most of my projects are written in Python, including my ML projects.

    Java

    Very proficient in Java from coursework and Voxyl (see projects section).

    C

    Proficient in using C from coursework, CS research, and Monsiv (see projects section).

    C++

    Familiar with C++ from my CS research and competitive programming.

    JavaScript

    I have experience in Node.js from my work at Tract and creating Discord bots.

    SQL

    I have used SQL for a large portion of my coursework as well as Voxyl (see projects section).

    Git

    I have used Git for many of my classes, Tract, and Voxyl.

    back
    Tract

    TRACT specializes in comprehensive human risk intelligence, reviewing records across criminal, legal, financial, and social media databases to offer real-time, intelligent background checks.

    Contributions:

  • Built TRACT's flagship tool, Sherlock. Currently constructing a talent acquisition tool.
  • Developed machine learning models for investment risk analysis, focusing on identifying potential red flags and areas of concern.
  • Utilized natural language processing to analyze social media data and generate insightful online presence profiles.
  • Developed data collection tools that automated the gathering, processing, and managing of data.
  • CS Research

    Over the summer of 2022, I was awarded a Student Faculty Research Grant Fellowship to research graphical interpretations and expansions of the Linear Influence Game (LIG) model of computational game theory.

    General influence games are graphical games in which each agent’s payoff is determined solely by the influence of other agents. LIGs are a subset of general influence games where the influence is linear. The challenge is efficiently calculating Nash Equilibria of games with many agents, such as Congress.

    Contributions:

  • The most recent literature on LIGs only allows for binary behavior. Our model expands on previous work to allow for efficient polynomial Nash Equilibria calculation with a multiplicity of behavior in games with tree graph structures as well as a continuum of behavior in games with path structures.
  • Introduced and coded a graphical interpretation of previous literature’s pruning algorithms and improved their efficiency.
  • back
    Voxyl Network

    Voxyl Network is a Minecraft server and business that I co-developed over the past 2 years, culminating in over 120,000 lines of code and 2.3 million unique players. My responbilities included: developing the game in Java; designing, implementing, and maintaining databases in SQL; monitoring and optimizing server performance to identify and resolve bottlenecks; and leading a team of more than 50 content moderators and game administrators.

    LobsterQ

    A high-frequency trading AI that uses limit order book data to predict short-term price movements of stocks. The AI employs a double deep Q-learner implemented with a custom neural network designed from scratch. It achieved 65% OOS accuracy on the millisecond level and 53% OOS accuracy on the second level, leading to 21% average daily returns without trading costs. Unfortunately, the AI doesn't work in practice due to bid-ask spread losses.

    TorchRing

    A distributed neural network training architecture for PyTorch models that prioritizes fault tolerance, scalability, and graceful recovery from failures. It utilizes a ring topology for efficient communication and message passing, allowing for improvements in system performance and stability without a single point of failure. TorchRing is able to dynamically balance computational load among nodes based on their performance, minimizing the impact of stragglers on overall training time. It also allows for dynamic allocation and deallocation of machines during training.

    Monsiv AI

    Monsiv is a simple, fast-paced, chess-inspired game with only 10 pieces and the objective of taking the opponent's king or reaching the other side of the board. The game was coded in Python with the PyGame library. The AI was made in C using game tree search with a custom implementation of the minimax algorithm and alpha–beta pruning. The AI is optimized using threading, transposition tables, iterative deepening, move ordering, optional greedy heuristics, and more.

    Othello AI

    An implementation of Othello and an AI to play it. The AI has achieved very strong performance, beating the top minimax bot on eOthello. It uses AlphaZero-style self-play reinforcement learning, leveraging MCTS with a neural network to evaluate states rather than simulation. It was trained over hundreds of sequential generations, each improving through self-play. In addition, I developed a minimax agent with a state evaluation heuristic for benchmarking and a GUI for playing against the AI.

    Discord Bots

    Coded a Python Discord bot using Discord.py and maintain two Node.js bots that use Discord.js. This is a side project intended to make QOL improvements for players and staff of Voxyl Network. It includes fun games and activities for players, support tickets using SQL, and integration with Minecraft for remote moderation and management purposes.