Skip to content
View sharmis-tp's full-sized avatar

Block or report sharmis-tp

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
sharmis-tp/README.md

sharmis-tp

Rust

Rust · Systems Programming · Distributed Systems

Correctness by design. Performance by measurement. Reliability under pressure.

Rust Tokio Linux GitHub

Profile views   GitHub followers


whoami

I'm a software engineer focused on Rust, systems programming, async services, and performance-conscious backend architecture.

I care about more than getting code past the borrow checker. I care about the guarantees behind it: who owns a resource, which invariants hold across a state transition, what cancellation leaves behind, and how a service behaves when something fails at the worst possible moment.

I borrow ideas. I own results.

Areas of depth

Domain What I pay attention to
Ownership & lifetimes Borrowing, API lifetime design, interior mutability, move semantics, resource lifecycles
Type-driven APIs Traits, generics, enums, newtypes, typestate, errors that express actionable failure
Async & concurrency Tokio, futures, Send / Sync, task supervision, cancellation safety, backpressure
Memory & performance Heap allocation, cache behavior, memory layout, benchmarks, zero-copy trade-offs
FFI & unsafe Rust ABI compatibility, raw pointers, aliasing, safety invariants, safe public wrappers
Networking & protocols Framing, parsing, versioning, timeouts, connection lifecycle, partial I/O
Production reliability Tracing, structured errors, graceful shutdown, deterministic tests, fault isolation

The engineering questions I ask

// Before adding a new abstraction or optimizing a hot path:
//
// 1. Which invariants must remain true?
// 2. Who owns the data, and how long must it live?
// 3. Can this operation block, panic, or be cancelled?
// 4. Is concurrency bounded? Where is backpressure applied?
// 5. Which allocations or copies are actually measurable?
// 6. How will failure be observed, reproduced, and recovered?

Selected repositories

These are Rust and systems-oriented codebases available on my account. Some may be forks or explorations; the repository history is the source of truth for individual contributions.

Repository What makes it technically interesting
Dbgeng-sys Low-level Rust bindings, foreign interfaces, ABI considerations
napi-rs Rust ↔ Node.js FFI, ownership across language boundaries
swc High-performance parsing, transforms, compiler infrastructure
deno Rust runtime architecture, asynchronous I/O, developer tooling
cross Rust cross-compilation and reproducible build environments
slint Native UI systems, declarative components, Rust integration

How I build systems

01 — Make invariants visible. Prefer expressive types, explicit state transitions, and narrow interfaces over comments that merely ask callers to be careful.

02 — Treat async as a resource-management problem. Spawned tasks still need owners. Queues need limits. Cancellation, timeouts, and graceful shutdown should be intentional.

03 — Keep unsafe code small and auditable. unsafe does not switch off correctness requirements; it transfers the obligation to document and uphold them.

04 — Profile before optimizing. Throughput, tail latency, allocations, and contention matter more than assumptions about what "should" be faster.

05 — Test the failure paths. Validate malformed inputs, partial reads, retries, timeouts, state recovery, and boundary conditions—not just successful execution.

Tools & technologies

Rust · Cargo · rustfmt · Clippy · Tokio · Serde · tracing · Linux · Git · Docker · CI

Also comfortable working across language boundaries with C/C++, TypeScript, Go, and Python.


Rust · Reliable Software · Thoughtful Systems Design

Explore repositories

Build software that stays understandable under load, under failure, and under review.

Pinned Loading

  1. awesome-rust awesome-rust Public

    Forked from rust-unofficial/awesome-rust

    A curated list of Rust code and resources.

    Rust 1

  2. Solana-Credit-Score Solana-Credit-Score Public

    Solana Credit Score shows which validators give the best staking rewards.

    Rust 1

  3. omnibus omnibus Public

    This repo contains code for managing and testing token-related programs

    Rust

  4. cross cross Public

    Forked from cross-rs/cross

    “Zero setup” cross compilation and “cross testing” of Rust crates

    Rust

  5. slint slint Public

    Forked from slint-ui/slint

    Slint is an open-source declarative GUI toolkit to build native user interfaces for Rust, C++, JavaScript, or Python apps.

    Rust

  6. smalloc smalloc Public

    A small memory allocator for Solana programs

    Rust