
Douglas Johnson
Systems programmer & software engineer
Idaho Falls, Idaho · me@dougvj.me · github.com/dougvj · linkedin.com/in/dougvj · bonnevilleinformatics.com
Systems programmer and software engineer with over a decade of professional experience spanning Linux kernel development, embedded systems, FPGA design, backend development, database management, and networking. Lead developer at Subsurface Insights and owner of Bonneville Informatics. Studied Computer Science and Computer Engineering at Utah State University.
Experience
Lead Developer Subsurface Insights
2013 – present- Developed FT260 UART Linux driver for component communication
- Designed and developed FPGA-based ADC buffer and associated Linux driver
- Developed low-level ADC drivers under Linux with near-realtime constraints
- Built IoT device management infrastructure
- Developed database query APIs for subsurface data analysis
- Backend and infrastructure development for scientific data processing and management
- Cloud engineering and DevOps
- Frontend work (React, TypeScript)
Owner Bonneville Informatics
2015 – present- Small business server and software support company providing custom solutions for virtual offices and remote desktops
Software Engineering Intern Sky Research
2011 – 2013- Developed software for data workflows and scientific computing
- Built frontend and backend for a data management site
Full-time Volunteer Brazil
2009 – 2011- Two years of full-time volunteer service; became fluent in Portuguese
Intern Idaho National Laboratory
2008 – 2009- Wrote C++ application infrastructure for an embedded robotic platform
Projects
- mybios
- From-scratch x86 BIOS implementation for legacy 386/486 hardware, with reverse-engineered chipset support
- retros
- OS kernel for retro x86 hardware
- NES
- Cycle-accurate NES emulator
- dsrisc
- Custom 32-bit RISC CPU architecture with assembler, emulator, and interactive debugger. My computer architecture talk for the Idaho Falls Programmers group runs as a program on the emulator: run it in your browser.
- icebreaker-uart-video
- FPGA UART to DVI/HDMI video display for the iCEBreaker board (Verilog)
- raytracer
- Multithreaded CPU ray tracer with SDL2 preview and Monte Carlo path tracing
- md-linear
- Revival of the deprecated and removed md-linear Linux kernel module; cited on the linux-raid list as a reason to revert the removal
- m68k-tools-bootstrap
- Builds QEMU for m68k, m68k GCC and LLVM toolchains, and the m68k Linux kernel
- kvmap / concurrent_kvmap
- Generic and lockless concurrent key/value hashmaps in C
- phmap
- Minimally perfect hash map in C
- sirtet
- Tetris clone built to learn shader programming
Also: refcnt, embed, rust-telnetd, gotek_util, udp-eth-tunnel
Skills
- Languages
- C (modern standards, RAII patterns), C++, Python, Rust, Go, Verilog, Java, Assembly (x86, ARM, RISC-V, m68k), Shell, PHP
- Systems
- Linux kernel development (FT260 UART driver, MD RAID bug discovery and patch, Intel Baytrail SoC errata patch), POSIX APIs, GNU toolchains, cross-compilation, OS development
- Hardware
- FPGA design (Verilog), real-time ADC driver, firmware development, embedded systems, sensor integration
- Networking
- Sockets programming (epoll), TCP/IP, WireGuard, NAT/routing, IPv6, embedded HTTP, TLS
- GPU
- OpenGL, OpenCL, CUDA, Vulkan
- Infrastructure
- AWS (EC2, S3), KVM/QEMU, NGINX, Apache, PostgreSQL, MySQL, Docker, Ollama, vLLM
- Build / CI
- Meson, Cargo, Git, GitLab CI/CD
- Scientific
- NumPy, pandas, ODMX, libhdf5
- Testing
- pytest, Meson test suites
- Frontend
- React, TypeScript
- Other
- Reverse engineering, retro computing hardware and software
- Spoken
- English (native), Portuguese (fluent)
Education
- Utah State University, Computer Science and Computer Engineering (double major), 2008 – 2009, 2011 – 2013
Awards & Leadership
- USU “A” Pin Award: 4.0 GPA for 2 consecutive semesters with 15+ credit hours each; sole recipient from the Computer Science department that year
- Leader of the Idaho Falls Programmers Meetup Group
- President of the Free Software and Linux Club at Utah State University
Interests
Systems programming, retro computing, emulation, hardware design (FPGAs, simple PCBs), geology, philosophy, music, running (completed a marathon in 2025), biking, hiking, and two dachshunds, Denali and Tut.





