Joshua Farin

Computer Science Student & Technology Enthusiast
Oregon, USA • joshua@emptycharacter.dev

Technical Skills

Programming

Go JavaScript HTML/CSS SQL Python Bash

Technologies

React PostgreSQL Docker Git WebSockets REST APIs

Systems

Linux Networking Virtualization pfSense Proxmox

Projects

Learning Lab Infrastructure

Network segmentation, virtualization, and lots of learning

As a CS student, I've built a homelab to learn networking and systems administration hands-on. It's been running for about 18 months now (with decent uptime when I don't break things while experimenting). This project has taught me more about enterprise networking than any textbook could.

Core Infrastructure

  • pfSense firewall with VLAN segmentation
  • Proxmox virtualization platform
  • Managed switch with 5 VLANs
  • Custom NAS with redundant storage

Learning Achievements

  • Finally got GPU passthrough working (took many attempts)
  • WireGuard VPN that actually routes correctly
  • Backup scripts that don't fail at 3am
  • Network monitoring that catches my mistakes
18
Months Learning
5
VLANs
1Gbps
Network Speed
500+
Hours Learning

What I Learned (The Hard Way)

This project taught me that enterprise networking concepts aren't just theoretical - they solve real problems. I've learned more from breaking things and fixing them than from any textbook. Getting VLAN routing wrong taught me more about network segmentation than any lecture could. Plus, I can now confidently troubleshoot network issues (mostly because I've caused most of them myself).

Full-Stack Development

Modern web application development and system integration

As a CS student diving into software development, I'm building real applications to understand how everything fits together. It's been a journey of connecting the dots between frontend, backend, databases, and deployment - with plenty of "why isn't this working?" moments along the way.

Backend Development

  • Go web servers and REST APIs
  • PostgreSQL database integration
  • JWT authentication systems
  • Microservices architecture

Frontend & Integration

  • React component development
  • Responsive web design
  • Real-time WebSocket features
  • Cross-platform deployment

Key Learning Projects

Multi-Service Application

  • Got frontend talking to backend (eventually)
  • User auth that doesn't leak passwords
  • Real-time features that actually sync

Development Learning

  • Git workflows (and merge conflict resolution)
  • Docker containers that start consistently
  • Debugging skills (out of necessity)

What I'm Discovering

Turns out software development is way more about problem-solving than just writing code. Every component I build teaches me something new about how applications actually work in the real world. The gap between "it works on my machine" and "it works everywhere" is... educational.