I build and secure systems end to end. This page highlights three Python labs: a TCP server and client that handle multiple connections and real network I/O, file encryption with Fernet (AES) with integrity checks and sound key handling, and password storage with PBKDF2 using unique salts, high iterations, and constant time verification. Together they show practical skills for application security and backend roles.
Artifacts
Socket Programming — Echo (Client/Server)
Skills gained: TCP/IP fundamentals, Python sockets, handling multiple clients with threads, connection timeouts and graceful shutdowns, basic protocol design, reading PCAPs to troubleshoot, structured logging, simple input validation, and awareness of where to add TLS and authentication.


Encryption/Decryption — Fernet (AES)
Skills gained: key generation and safe storage, authenticated encryption with integrity checks, secure file I/O, key rotation basics, using environment variables for secrets, handling exceptions for bad tokens, verifying results with test files, and avoiding pitfalls like hard coded keys or unauthenticated ciphers.

User Authentication — PBKDF2 Passwords
Skills gained: salted and iterated password hashing, constant time verification, tuning iterations and rehash on login, designing simple register/login flows, lockout and backoff for brute force defense, JSON data modeling for user records, basic audit logging, and planning safe migrations from weaker hash schemes.

