About
Hello! I'm Julian Reder, a programmer and student at North Carolina State University. I've had a passion for learning and developing my entire life and wanted to collect my projects and skills in one centralized place. This website has a brief overview of my projects and skillset, as well as a contact form. It's also a template, see the project on GitHub to see how to use it yourself ^w^
Hopefully you find something interesting here! Feel free to reach out if you want to chat about anything or have questions about my projects or experience.
Experience
Financial Services Technical Intern, The Bell, Bell & Cronlund Group @ Merrill Lynch Wealth Management
This summer, I am working with the Bell, Bell, and Cronlund Group within Merrill to improve their internal calculations platform responsible for $500M+ in assets under management.
North Carolina State University (GPA: 4.0)
I am currently enrolled in the Computer Engineering and Statistics departments at North Carolina State University. I am pursuing a Bachelor's in Statistics and Computer Engineering.
Developer @ AERPAW
I have had the pleasure to work with Dr. Mihail Sichitiu at the Aerial Experimentation and Research Platform for Advanced Wireless at North Carolina State University for a couple of years now. I have built several interesting projects including a plane tracker and a drone flight recorder.
Wake Tech Community College: (GPA: 3.8)
This was my first experience taking college coursework. I graduated with multiple appearances on the Dean's List, membership in the Beta Alpha chapter of the Phi Theta Kappa honor society, and an Associate in Science degree.
Projects
PyAerial
A high-performance ADS-B and Mode-S aircraft tracking system developed for the AERPAW research platform.
Piranha [unmaintained]
A feature-rich Discord bot that integrates the Stockfish chess engine to let users play chess directly in chat.
finiteCraft
A high-performance scraping and recipe discovery pathfinder for the Infinite Craft game.
DroneTracker
A real-time computer vision and PTZ camera tracking system for AERPAW drones.
Triggered
A programmable IFTTT-style automation and utility bot for Discord server administrators.
Strife
A high-performance Discord bot hosting interactive multiplayer games with a custom interaction router, session lifecycle management, and PostgreSQL database integration.
Statify
A server-side Minecraft plugin for advanced statistic aggregation and database-driven leaderboards.
Molotov
A screen-scraping and automated keyboard injection bot for the jklm.fun word game Bomb Party.
discord.py-template
A feature-rich template for developing modern discord.py bots.
Chess-Challenge
A compact C# chess bot developed for Sebastian Lague's tiny chess bot competition.
aerpawlib
A high-level MAVLink and MAVSDK abstraction framework for drone flight experimentation.
ML-Ticker
A financial query utility with a sandboxed formula engine, developed for Merrill Lynch.
Portfolio Website (v3)
The third iteration of my personal developer portfolio website, built with Python, Tailwind CSS, and Bootstrap Icons.
Skills
Languages
I've used Python in almost every major project to tie together microservices, automate tasks, and design API wrappers. Some examples:
- PyAerial: Building plane trackers using MongoDB and Kafka
- DroneTracker: Scripting dynamic PTZ camera controllers to track flying drones in real-time
- aerpawlib: Wrapping complex low-level MAVLink flight controls
- Strife / Piranha: Coding interactive Discord bots with session matchmaking and custom interaction routers
- ML-Ticker: Constructing data analysis utilities with custom sandboxed engines
I've used C/C++ in performance-critical sections and systems programming where high execution speeds or direct hardware controls are needed. I have a lot of experience with Arduino and microcontrollers, as well as JIT compilation for Python code.>
I've used JavaScript to implement client-side interactive elements and interface logic on web pages. Some examples:
- Portfolio Website (v3): Building dynamic client-side filtering and overlay layouts
- finiteCraft: Constructing DOM scraping scripts
- Telemetry Dashboards: Designing interactive visualization systems
I've used Java in a pretty limited fashion outside of class. My main project using Java was the Statify Minecraft plugin, where I developed server-side Minecraft plugin using SpigotMC to expose Minecraft's statistics to the server and players.
I've used C# to build performance-critical projects. My primary example of this is my chess bot made for Sebastian Lague's tiny chess bot competition.
I've used Bash to write automation scripts, orchestrate system builds, and streamline developer setup commands. Some examples:
- All Projects: Bootstrapping local developer environments
- Docker setup scripts: Managing container deployment pipelines
- Database Initialization: Creating port-monitoring routines to ensure database startup sequences execute in order
Technologies
I've used Linux/Unix environments to host production systems, configure deployment pipelines, and run diagnostics. Some examples:
- All Projects: Hosting applications on remote VPS instances
- Service Configuration: Setting up systemd service units and redirecting daemon output to log files
- Diagnostics: Managing environment variables and file permissions, and debugging network issues using standard utilities like netstat and tcpdump
I've used Docker to containerize multi-service applications, ensuring consistent execution across development and production environments. Some examples:
- PyAerial: Containerizing multi-container architectures combining database and telemetry services
- discord.py-template: Creating optimized multi-stage build files to minimize production footprint
- Strife: Configuring network isolation for microservices and Docker Compose deployment
I'm really good at using Selenium to scrape large amounts of data. Some examples:
- finiteCraft: Automating browser sessions to discover crafting recipes
- Worker Threads: Spawning headless Chromium instances to scrap pages
- Proxy Rotation: Managing rotating proxy pools to avoid request rate limits
I've used OpenAPI schemas to design structured schemas and write API documentation. Projects I've used this skill for:
- PyAerial: Designing a REST APIs that external tools can use to interface with the program
- finiteCraft: Writing documentation for a hacky static API using Github Pages
After some time using the significantly simpler database MongoDB, I began to use more traditional SQL-like databases (MySQL, PostgreSQL) as storage methods for my more complicated applications. Some examples of this:
- Strife: Designing robust repository patterns and migration flows using asyncpg and PostgreSQL
- Triggered: Storing custom event triggers and role permissions
- Statify: Aggregating server-wide statistics and leaderboards, and aggressive indexing to optimize queries.
MongoDB was the first database that I used, which is reflected in the projects I used it for. Some of the stronger examples:
- PyAerial: Storing raw, high-frequency aircraft coordinates in real-time
- finiteCraft: Mapping the element crafting paths in a graph-like structure
I've used Kafka to stream telemetry data for my AERPAW projects and have gotten quite experienced with it. Some examples:
- PyAerial: Streaming real-time collision warnings and alerts to notification brokers
- DroneTracker: Broadcasting high-frequency GPS telemetry to the AXIS camera
I've used discord.py to develop a variety of bots and even a modular bot templates. Work I've done:
- discord.py-template:A modular bot framework with hot-reloading cog engines
- Strife / Piranha: Designing interactive games with a custom interaction router
- Triggered:A full trigger-based automation system entirely within Discord
I've used ADS-B / Mode-S to use radio hardware to parse aircraft signals, and track flight coordinates. I have gotten down to the hardware level of this protocol with my work at AERPAW. With my work on PyAerial, I set up RTL-SDR hardware to capture raw 1090 MHz transponder packets and parse them.
Tools
I've used the JetBrains Suite of IDEs to debug and profile complex codebases across multiple stacks. Some examples:
- All Projects: Using PyCharm to step through multi-threaded environments
- C++ Development: Using CLion to profile memory usage and trace performance bottlenecks
- Java Integration: Inspecting remote database schemas and JVM bytecode within IntelliJ IDEA
I've used Git to track codebase changes, collaborate on repositories, and manage deployment integrations. Some examples:
- All Projects: Tracking source code changes and branching
- aerpawlib: Using git submodules for external dependency tracking
- CI/CD Pipelines: Squash commit histories with interactive rebases and configure automated testing in GitHub Actions