Curriculum Vitae

2025-07-12 · Ryan X. Charles

Ryan X. Charles

San Francisco Bay Area, CA
website@ryanxcharles.com

Objective

Engineer with 30 years of software development experience, from React components in TypeScript, to shaders in WGSL, to cryptography in Rust, to data analysis in Python, to device drivers in C, currently 100% focused on artificial intelligence and machine learning. Seeking to leverage high-breadth cross-discliplinary expertise in physics, mathematics, and engineering to contribute code in TypeScript, Rust, Python, Lua, Nushell, and WGSL for advanced AI systems as a full-stack software engineer at a leading AI company in the San Francisco Bay Area.

Current Projects (AI & Machine Learning Focus)

Nutorch: PyTorch-like Interface for Nushell

  • Developed a Nushell plugin in Rust, wrapping tch-rs (which itself is a wrapper for libtorch, the C++ library behind PyTorch), enabling a PyTorch-like data analysis experience directly on the command line in Nushell.
  • Offers seamless integration with command-line tools via Nushell’s structured data pipes, providing a compelling alternative to Python data analysis for anybody who spends their time in a terminal.
  • Tech stack: Rust, Nushell, Python, tch-rs, libtorch, PyTorch.
  • Website: nutorch.com | GitHub: nutorch/nutorch

Termplot: Advanced Terminal Plotting Library

  • Created a terminal plotting tool using web technologies (Plotly.js, React Router, Express, Puppeteer) to render high-resolution, full-color plots as images in any iterm-compatible terminal via ANSI escape codes.
  • Designed for compatibility with Nutorch and other CLI tools, enabling a complete data analysis workflow in the terminal, from data generation, to processing, to reduction, to visualization.
  • Tech stack: TypeScript, React, Plotly.js, Express, Puppeteer, ANSI escape codes.
  • Website: termplot.com | GitHub: termplot/termplot

Chatvim: Chat with Markdown in Neovim & CLI

  • Built a developer tool for AI-powered chats with Markdown files: a Neovim plugin (Lua) and a CLI tool (TypeScript). Why markdown files? Because it maximizes compatibility with existing editor and terminal tools.
  • When combined with a customized Neovim configuration and command-line configuration, it provides an extremely fast interface for inputting and outputting instructions and code with LLMs, enabling a significant speed advantage over web-based chat interfaces. Although not (yet) agentic, the speed advantage is comparable to agentic tools like Claude Code and Gemini CLI.
  • Tech stack: Lua, TypeScript, Neovim, xAI/OpenAI/Anthropic, CLI.
  • Website: chatvim.com | GitHub: chatvim/chatvim.nvim & chatvim/chatvim.cli

Hallucipedia: Collaborative AI-Generated Encyclopedia

  • Founded a Wikipedia-like platform where all content is AI-generated (using xAI/OpenAI for text and images), allowing users to create linked articles for a small fee.
  • Tech stack: TypeScript, React, React Router, Node.js, Express, tRPC, PlanetScale, MySQL.
  • Website: hallucipedia.com

Artintellica: Free Machine Learning Educational Resource

  • Authored (partially with AI) a comprehensive open-source resource with 100+ blog posts and 200+ code demos/exercises on machine learning, neural networks, deep learning, and reinforcement learning.
  • Tech stack: TypeScript, React, React Router, Node.js, Python, PyTorch, NumPy, Matplotlib, xAI/OpenAI/Anthropic.
  • Website: artintellica.com | GitHub: artintellica/artintellica

Pow5: A GPU-Based Proof-of-Work Algorithm for EarthBucks Blockchain

  • Designed a new proof-of-work algorithm for the EarthBucks blockchain, leveraging WebGPU to enable fast, parallelized mining on consumer GPUs, while still being fast and cheap to verify on CPU. Significantly faster, more efficient, and orders of magnitude easier to verify than the previous Proof-of-Work algorithm for EarthBucks called algo1627 (which was written with TensorFlow.js and which I also created).
  • The algorithm is implemented in WebGPU Shader Language (WGSL), and wrapper code in TypeScript for the WebGPU web API, allowing the shader to run in Chrome-based browsers (and soon Safari/Firefox), making it accessible to all users.
  • Features first-of-its-kinds implementation of Blake3 hashing algorithm in WGSL. Great care was taken to manage memory to optimize performance.
  • Tech stack: TypeScript, WebGPU, WGSL, Rust/WASM (used for testing).
  • GitHub: earthbucks/earthbucks

WebBuf: Fast Buffer Utilities for Cryptography

  • Engineered a high-performance buffer utility library in Rust (compiled to WebAssembly, wrapped in TypeScript) for hex/base64 encoding and cryptographic algorithms (SHA256, Blake3, secp256k1, AES256, CBC) across Node.js, Bun, Deno, and web.
  • Enables isomorphic cryptography between server and browser with full typing and speed optimizations (thanks to Rust/WASM).
  • Tech stack: Rust, TypeScript, WebAssembly, Node.js, Bun, Deno.
  • Website: webbuf.com | GitHub: ryanxcharles/webbuf

Technical Skills

  • Programming Languages: TypeScript, Rust, Lua, Nushell, Python, JavaScript, SQL, WGSL, C, C++
  • AI & Machine Learning: PyTorch, NumPy, Matplotlib, TensorFlow.js, Theory of Neural Networks & Deep Learning; Integration of xAI, OpenAI, and Anthropic AI models; Nutorch, Termplot, and Chatvim.
  • Web Technologies: React, Node.js, Express, tRPC, React Router, Tailwind, Next.js, Bun, Deno, WebAssembly, WebGPU
  • Dev Tools & Platforms: Git, Docker, AWS (EC2, ECS, S3), fly.io, PlanetScale, MySQL, PostgreSQL, MongoDB, Neovim, CLI (bash, zsh, Nushell)
  • Cryptography: SHA256, Blake3, secp256k1, AES256, CBC (self-implemented in TypeScript/Rust)
  • Other Domains: Blockchain (Bitcoin, EarthBucks, Bitcoin Cash, Litecoin), Physics (Data Analysis, Simulation), Math (Calculus, Linear Algebra, Probability Theory)

Professional Experience (Selected)

Founder & CEO, Multiple AI & Blockchain Ventures 2021 – Present

  • Founded and lead ventures including Hallucipedia, Artintellica, and Identellica (identity verification), generating revenue through consumer products, SaaS services, and trading crypto.
  • Created my own blockchain, EarthBucks, with novel proof-of-work algorithm (pow5; previously algo1627), novel scripting language (similar to Bitcoin Script, based on FORTH), novel API based on tRPC.
  • Transitioned focus to AI, building consumer apps, developer tools, and educational resources leveraging state-of-the-art models (xAI, OpenAI, Anthropic).

Engineering Manager, Fabriik (formerly The Bayesian Group) 2020 – 2021

  • Managed a team of 4-5 engineers, overseeing Money Button (payment system) and leading the token product for blockchain-based user assets.

Founder & CEO, Yours Inc. / Money Button 2015 – 2020

  • Created Yours.org, a decentralized social network with micropayments, raising $1.5M (led by Bitmain); pivoted to Money Button, a widely adopted payment system acquired by The Bayesian Group in 2020.
  • Created the first app for Bitcoin Cash in late 2017, navigating the 2017 block size wars.

Software Engineer, BitGo 2015

  • Developed full-stack Bitcoin wallet software (Node.js, MongoDB) for a leading 2-of-3 multisig security platform in Palo Alto, CA.

Cryptocurrency Engineer, reddit 2014 – 2015

  • World’s first officially-titled “Cryptocurrency Engineer”; designed Reddit Notes wallet (fullnode project) to integrate cryptocurrency for reddit users.
  • GitHub: reddit-archive/fullnode

Software Engineer, BitPay 2013 – 2014

  • Contributed to core Bitcoin payment processing software; first employee to accept full salary in Bitcoin; worked in Atlanta, GA and San Francisco, CA.
  • Created bitpay/bitcore repo on GitHub, writing the complete first version of the library in JavaScript, which has gone on to get thousands of stars and forks, and is a pillar of the Bitcoin ecosystem.
  • Created bitpay/copay repo on GitHub, which was the first multi-sig wallet for Bitcoin. This repo has been moved to bitpay/wallet and is now the foundation of the BitPay Wallet.
  • GitHub: bitpay/bitcore & bitpay/copay

Education

Graduate Studies in Physics (PhD Program, Incomplete) 2007 – 2013

Washington University in St. Louis, St. Louis, MO

  • Researched cosmology and high-energy astrophysics; developed data analysis and simulation software (C, C++, Python); designed an 8-bit microprocessor; researched heterogenous computing architectures (mixing CPUs, GPUs and FPGAs); fixed Linux device drivers for a telescope in C; wrote pipes-based data analysis tools in Python that were the precursor to Nurtorch and Termplot.

Bachelor of Science in Physics & Mathematics 2002 – 2007

University of Missouri-Columbia, Columbia, MO

  • Double major with strong foundation in calculus, linear algebra, probability theory, and quantum theory.

Youth Programming Experience 1995 – 2002

Self-taught programming from age 10, creating games and applications in BASIC on the TI-80, TI-86 and TI-89 calculators, QBASIC, QuickBASIC, VisualBasic, and VisualC++ on DOS/Windows, later PHP/MySQL/HTML/CSS (LAMP stack).

Additional Information

  • 30+ years of programming experience (since 1995), spanning web development, physics, cryptocurrency, and AI.
  • Open-source contributor with projects on GitHub (e.g., bsv, fullnode, bitcore).
  • Experienced in leading small teams (up to 9 members) and raising venture capital.

Contact

Please contact me at website@ryanxcharles.com.


Back to Home

Copyright © 2025 Ryan X. Charles
Home · Blog · Apps · Social · CV · Contact