Vladislav Shuvalov

Backend-разработчик.
Создаю надёжные системы на
Go, Python & little Rust.

$ codetime CodeTime badge
// Vladislav Shuvalov
use std::collections::HashMap;

struct Developer 
    name: String,
    stack: Vec<String>,
    location: String,


impl Developer 
    fn new() -> Self 
        Developer 
            name: "Vladislav Shuvalov",
            stack: vec!["Rust", "Go", "Python"],
            location: "Екатеринбург",
        
    


fn main() 
    let dev = Developer::new();
    println!("Hello, !", dev.name);
rust UTF-8
ниже

О себе

Работаю над backend-сервисами и системами. Мой подход — выбирать правильный инструмент под задачу: Go для конкурентных микросервисов, Rust там, где важна производительность и безопасность памяти, Python для прототипирования и автоматизации.

Ценю простоту архитектуры, читаемость кода. Фанатею по Rust, локальному AI и self-hosting.

Производительность

Оптимизирую критические пути, измеряю до и после.

// zero-cost abstractions

Надёжность

Проектирую системы с учётом отказоустойчивости.

// Result<T, E>

Прагматизм

Выбираю простые решения, которые работают сейчас и желательно, чтобы не сломались когда-то потом ;)

// YAGNI & KISS

Open Source

Обожаю open source и self-hosted, собственно и сам стараюсь поддерживать проекты.

// open source

Навыки

Самооценка опыта работы с технологиями.

// Core Languages

Rust 65%
Go 70%
Python 80%

// Backend

FastAPI 82%
Django 80%
sqlc 70%
goose 50%
atlas 50%

// DB

PostgreSQL 65%
Redis 80%
ElasticSearch 85%

// Tooling & Infra

Docker / k8s / ArgoCD / Gitlab 78%
Linux / Windows / MacOS 85%

// Self Hosting

Dokku / Docker 60%
Caddy / NGINX 60%
Ollama / MLStudio / AnythingLLM 70%
Xray / Remnawave 50%

// Mesh

LoRa 70%
Meshcore 70%
Meshtastic 60%

// Embedded

esp-hal 65%
embedded-hal 65%
esp32 65%
esp32h2 65%
[package]
name    = "shuvalov-dev"
version = "1.0.0"
edition = "2005"

[dependencies]
tokio     = { version = "1", features = ["full"] }
actix-web = "4"
serde     = { version = "1", features = ["derive"] }
sqlx      = { version = "0.8", features = ["postgres"] }
redis     = "0.26"
tracing   = "0.1"

[profile.release]
opt-level = 3
lto       = "thin"

Homelab

Сервисы, которые я размещаю в своём Homelab.

  • sure

  • my-netflix-stack

  • backrest

  • beszel

  • rustfs-backup

  • affine

  • immich

  • vaultwarden

    Пароли

  • oxicloud

    Файловое хранилище

  • garage

    S3-хранилище

Проекты

GitHub

Vibe

Сервис транскрибирования и суммаризации аудио

RustcpaldesktopAIlocal
GitHub

weact-epaper-154-rs

Экспериментальный Rust-драйвер для 1,54-дюймового четырёхцветного e-paper дисплея

Rustembedded-halembedded-graphicse-paper
GitHub

btyper

Адаптивный тренажёр слепой печати в терминале: упражнения на русском и английском, работа над слабыми буквами и отслеживание прогресса.

GoTUItypingoffline

Контакты

Локация

Екатеринбург, RU

Статус

Не в поиске

main.rs
fn main() 
    let contact = Contact 
        email:    "mega.kefi36@icloud.com",
        telegram: "@Kitzu_Zen",
        location: "Екатеринбург, RU",
        status:   Status::NotLooking,
    ;

    // Можно просто написать
    contact.send_message(
        "Создадим что-нибудь вместе"
    );