John Doneth is a full‑stack software engineer with 11 years of experience, currently building products at Joydrive from his base in Petoskey, Michigan. He is a polyglot developer who favors Elixir and Phoenix but has deep hands‑on experience in Rust and compiler work, demonstrated through contributions to high‑profile projects like Tokio and Gleam. His open‑source work ranges from improving async networking examples and gRPC code generation to enhancing the Elixir Sentry SDK’s envelope handling, showing attention to robust error handling and developer ergonomics. At Grand Valley State University and Applied Medical Device Institute he delivered production software for regulated domains, blending practical engineering with careful documentation. Known for refining examples and docs as much as core code, he makes complex async and code‑generation workflows easier to adopt.
11 years of coding experience
4 years of employment as a software developer
Computer Science, Computer Science at Grand Valley State University
⭐️ A friendly language for building type-safe, scalable systems!
Role in this project:
Back-end Developer
Contributions:12 reviews, 55 commits, 4 PRs in 7 months
Contributions summary:John primarily focused on enhancing the JavaScript generation capabilities of the Gleam compiler, particularly for case expressions and alternative patterns. Their work involved modifying the `pattern.rs` and `expression.rs` files to support guards, assignments, and alternative pattern matching within case statements. They also added integration tests to verify the correct behavior of alternative patterns, contributing to the robustness of the compiler's JavaScript output.
A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
Role in this project:
Back-end Developer
Contributions:8 commits, 12 PRs, 30 comments in 1 year
Contributions summary:John primarily contributed to examples within the Tokio asynchronous runtime project, demonstrating proficiency in Rust. Their work involved updating and refining examples related to networking, specifically UDP and TCP socket implementations. The commits show improvements in example code, including the addition of async/await, and the export of an error type, indicating a focus on enhancing the usability and functionality of the Tokio library's example code. Several examples were updated to return a `Result` to enhance the error handling.
non-blockingasynchronousschedulingrustevent-loop
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.