Freelance Developer
10+ years exp
5+ projects
SQL
C#
JavaScript
TypeScript
Node JS
Rust
Security & Auth: 7/10
Reliability & Observability: 6/10
API Design: 5/10
Active 14 days ago
Invite to interview
Message
Download CVCV
Overview
Technical skills
Timeline
Roles
Overview
A capable backend-focused developer at an early senior level with pragmatic system design and strong testing discipline. The strongest proven skill is secure, defensive input handling and binary-format parsing - demonstrated by the region-pack validator and signature verification (SpamArtist/TransitStay/src/region-pack.ts) plus extensive negative tests. The developer shows limited evidence of large-scale distributed systems, production-grade rate limiting or multi-step schema migrations in public code.
Technical skills
SQL• Senior • 10y+ • 5+ projects
C#• Junior • 8y+
JavaScript• Staff • 8y+ • 5+ projects
TypeScript• Staff • 8y+ • 5+ projects
Node JS• Senior • 7y+
Rust• Junior
Node JS
Express
Nest.JS
Databases
Neo4j
ElasticSearch
PostgreSQL• 7y+
Frontend
Frontend
esbuild
React.js• 5y+
GraphQL
Next.js
DevOps
Kubernetes
Rest API
CI/CD
Amazon EC2• 7y+
Amazon EKS• 7y+
AWS• 7y+
Kibana• 4y+
CI/CD
QA
Playwright
QA
Sentry• 4y+
Mobile
Xamarin
React Native• 7y+ • 1 project
AI/ML
LLM
Claude
Cybersecurity
GDPR
Timeline
Indie Developer
•
Middle
Freelance / Indie Developer
•
Freelance
Delivered freelance web and product work including booking and sales pages and localized discovery improvements. Built an EU-focused dropshipping e-commerce experience and an automated sales pipeline for a Shopify storefront. Developed a CI/CD tool for auditing web extension bundles to reduce performance waste and flag security and GDPR-related risks, plus a local server for running multiple web apps on Android tablet devices.
CI/CD
GDPR
Rust
LLM
ChatGPT
Claude Code
Senior Software Engineer
•
Senior
BrainRocket - Soft2Bet
•
Full-Time
Worked on enhancing BrainRocket’s B2C brands with Next.js, TypeScript, and GraphQL for large-scale audiences across multiple regions. Integrated global payment providers by building backend services with NestJS and PostgreSQL to improve deposit volume. Introduced an AI/LLM-assisted workflow to research, review code for performance, and turn requirements into engineering tickets.
Next.js
TypeScript
GraphQL
Nest.JS
PostgreSQL
LLMsince 2025
Software Engineer
•
Middle
Coolbet - SEGA Sammy
•
Full-Time
Optimized internal user-search performance by simplifying logic and correcting SQL indexing to significantly reduce latency. Tuned a daily SQL job by removing costly casts in JOIN conditions, improving runtime and compute efficiency. Built a dedicated web app to replace a Google Sheets workflow, and shipped B2C gaming features using React and NodeJS with payment gateway integrations. Improved reliability through code reviews and production monitoring using Kibana and Sentry.
React.js
Node JS
SQL
Kibana
Sentry
Full Stack Engineer Lead
•
Lead
Applied Cloud Computing
•
Full-Time
Led a team of four engineers and managed multiple projects as a promoted lead within six months. Reduced the size of a React Native mobile app by optimizing the funds-listing module while maintaining functionality. Architected and built backend services in NodeJS with Postgres for credit risk use cases, and deployed and operated applications on AWS including EC2 and EKS for stability and performance.
React Native
Node JSsince 2019
PostgreSQLsince 2019
AWS
Amazon EC2
Amazon EKS
Software Engineer - I
•
Middle
Philips VitalHealth Software
•
Full-Time
Developed React UI components with responsive designs and ensured cross-browser compatibility. Shipped mobile applications using Xamarin for Android and iOS, and implemented backend services using C# .NET. Contributed to product features across web and mobile surfaces within the VitalHealth domain.
React.jssince 2018
C#
.NET
Senior Backend Developer
Confidence: Medium API Engineer
A capable backend-focused developer at an early senior level with pragmatic system design and strong testing discipline. The strongest proven skill is secure, defensive input handling and binary-format parsing - demonstrated by the region-pack validator and signature verification (SpamArtist/TransitStay/src/region-pack.ts) plus extensive negative tests. The developer shows limited evidence of large-scale distributed systems, production-grade rate limiting or multi-step schema migrations in public code.
API Design
5/10
How well APIs are designed
Clear, pragmatic HTTP API design for a local dashboard with consistent JSON error responses and CLI flag handling, but no explicit versioning, pagination conventions, or idempotency-key support.
Evidence
SpamArtist/local-server/src/supervisor.js: handleDashboardRequest API endpoints (/api/apps, /api/runtime-info, /api/apps/:id/mappings, /api/apps/:id/restart, /api/apps/:id/logs)
SpamArtist/local-server/src/cli.js: parseArgs and applyConfigFlags - structured CLI-to-config mapping and flags
SpamArtist/local-server/tests/integration.test.js: mapping POST to /api/apps/mapped-static/mappings demonstrates API contract and integration test
Data Layer & Database
5/10
Working with databases
Data layer shows careful validation, atomic commit semantics and explicit transaction handling for client-side DB and persistent state, but lacks multi-step schema migrations or complex relational tuning.
Evidence
SpamArtist/TransitStay/src/region-pack.ts: commitActiveRegionPack and readActiveRegionPack use IndexedDB transactions with oncomplete/onerror handling
SpamArtist/TransitStay/src/region-pack.ts: PbfReader and decodeGeometry - hand-rolled MVT parsing and strict validation
SpamArtist/local-server/src/state.js (referenced by supervisor.js tests): persistent state load/save used across restarts (evidenced in tests/integration.test.js)
Scalability & Performance
4/10
Handling load and speed
Performance-aware components and measurement exist - render batching, frame-time metrics and a memory-focused checkpoint harness - but no broad caching/invalidation strategy, distributed queuing, or load-testing artifacts.
Evidence
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: TransitOverlayRenderer uses requestAnimationFrame batching, keeps maxFrameWorkMs and svg-update metrics
SpamArtist/TransitStay/tests/smoke/checkpoint.spec.ts: Checkpoint harness measures resident memory and frame-work metrics across movement cycles
SpamArtist/local-server/src/node-runtime.js (calculateBackoffDelay referenced in tests): backoff strategy used for runtime restarts (unit tests exercise behavior)
System Architecture
5/10
Overall system structure
Deliberate module boundaries and service decomposition (CLI, supervisor, runtimes, service-manager, extension background/content/popup) with thoughtful error propagation and lifecycle handling; not a distributed microservice architecture but solid single-host decomposition.
Evidence
SpamArtist/local-server/src/supervisor.js: high-level orchestration, reconcile loop, runtime lifecycle and FS watch logic
SpamArtist/local-server/src/service-manager.js: platform-specific service install plan generation and executePlan
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: adapter abstraction (FixturePropertyMapStateSource / LiveImmobilienScout24MapStateSource) separating data-source concerns from rendering
Security & Auth
7/10
Protecting data and access
Strong security awareness in ingest and validation - cryptographic signature verification, canonical JSON signing, strict origin/path checks, content-length and byte-limit enforcement and many negative tests covering malformed inputs.
Evidence
SpamArtist/TransitStay/src/region-pack.ts: verifyManifestSignature using WebCrypto, canonicalJson(unsignedManifest), sha256Hex and strict resolvePackFileUrl origin/path checks
SpamArtist/TransitStay/src/region-pack.ts: fetchBytes enforces content-length and stream size limits and cancels reader when exceeding limits
SpamArtist/TransitStay/tests/smoke/extension.spec.ts: many negative manifest test cases demonstrating threat-mode validation (manifest-wrong-signature, manifest-bad-hash, manifest-cross-origin-file, etc.)
Reliability & Observability
6/10
Stability and monitoring
Good reliability and observability practices - graceful shutdown, disconnect handling, restart/backoff policies, structured log buffers and an integration test suite - with explicit telemetry in the extension harness; retries/circuit-breakers are present in limited form.
Evidence
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: teardown handles runtime.onMessage removal, port disconnects, MutationObserver disconnect and pagehide - graceful cleanup
SpamArtist/local-server/src/supervisor.js: start/stop logic, reconcile loop with in-flight gating, SIGINT/SIGTERM handling in cli.js and restart/recoverFromPortConflict
SpamArtist/TransitStay/tests/smoke/checkpoint.spec.ts: automated checkpoint harness recording metrics and producing evidence files
Expertise
Node.js• Middle
Microservices & API Architecture• Middle
System Architecture• Middle
Industries
Real Estate• Middle
Technologies
PostgreSQL• 7y+
Rest API
Neo4j
Nest.JS
Express
Kibana• 4y+
CI/CD
AWS• 7y+
Kubernetes
ElasticSearch
Amazon EKS• 7y+
Amazon EC2• 7y+
Recommendations
- Build and maintain browser-extension backed features that require safe ingestion of signed data packs and robust client-side validation.
- Develop local developer tools and supervisors - dashboards, process supervision, service install flows and integration tests for developer workflows.
- Implement API-driven tooling and integration points for web apps where clear contracts, graceful shutdown and test harnesses are required.
Repositories
The developer's experience in this domain has been verified based on AI analysis of the following repositories:
Senior Frontend Developer
Confidence: High UI Engineer
A senior-level frontend engineer focused on building robust browser extension UX and local developer tooling. The strongest proven skill is secure, resilient client-side integration and state management - evidenced by the Transit overlay (adapters, validation, fail-closed behavior) and the Region Pack installer (signature verification, streaming read with limits, atomic IndexedDB commits). The public codebase shows thorough E2E and performance checkpoint tests but does not demonstrate large-scale distributed backend, cloud infrastructure, or high-scale production analytics work.
UI Component Architecture
5/10
How interface parts are built
Component boundaries are deliberate (Shadow DOM, renderer, selection controller) and composition is used; code shows a bespoke small UI system rather than a copied kit, but no large design-system library or cross-app component library is present.
Evidence
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: TransitSelectionController and TransitOverlayRenderer implementing selection, rendering and Shadow DOM panel
SpamArtist/TransitStay/tests/smoke/extension.spec.ts: end-to-end assertions exercising UI roles, selection, and state-preserving behavior
Responsive & Cross-browser
4/10
Works on all screens and browsers
Feature-detection and runtime observers are used (ResizeObserver, MutationObserver) and dashboard HTML includes a responsive media query, but there is no advanced fluid type or container-query system.
Performance Optimization
5/10
Speed of the interface
Rendering is throttled with requestAnimationFrame, frame-work timing is recorded and tests validate render budgets; network streaming is read with a reader and cancelled when limits exceed, showing measured and practical performance controls.
Evidence
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: TransitOverlayRenderer uses requestAnimationFrame, svgUpdates/per-frame counters, and records transitstayLastFrameWorkMs/max metrics
SpamArtist/TransitStay/tests/smoke/checkpoint.spec.ts: performance checkpoint measuring maxFrameWorkMs, svg updates and enforcing thresholds
SpamArtist/TransitStay/src/region-pack.ts: fetchBytes reads the response stream with reader, tracks totalBytes and cancels when limits are exceeded
Accessibility & Semantics
5/10
Usable for everyone
Accessibility attributes and roles are applied and verified in tests (aria-label on panel, aria-pressed states, focus-visible outline), with test coverage that asserts semantic accessibility, though there is not a full a11y CI pipeline shown.
Evidence
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: panel setAttribute('aria-label','TransitStay'), line-button uses aria-pressed, focus-visible style is present
SpamArtist/TransitStay/tests/smoke/extension.spec.ts: frequent use of getByRole/getByLabel and assertions against accessible text and roles
State Management & Data Flow
6/10
Managing data in the app
Clear async state discipline and failure isolation - adapters request state, validate it, emit events and perform fail-closed behavior; server-state and storage operations are transactional and integrity-checked (signature verification, hash and size checks, atomic IndexedDB commit).
Evidence
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: FixturePropertyMapStateSource and LiveImmobilienScout24MapStateSource implement requestState/teardown, settled-state dispatch, settle timers and fail-closed handling
SpamArtist/TransitStay/src/region-pack.ts: installRegionPackFromManifestUrl, verifyManifestSignature, fetchPackFile, fetchBytes and commitActiveRegionPack enforce signature, size/hash limits and use IndexedDB transactions
SpamArtist/TransitStay/tests/smoke/extension.spec.ts: tests asserting isolated activation failures, atomic commit behavior and robust teardown
UX & Visual Polish
5/10
Look and feel quality
UX includes state messaging, selection limits, failure states and non-interference with host, with numerous end-to-end tests verifying flows; visual polish is strong for the overlay but lacks broad design-system documentation or theming tokens.
Evidence
SpamArtist/TransitStay/entrypoints/transit-overlay.ts: UI includes selection count, limit-message role=status, failClosed state and pointer-events:none to remain non-interfering
SpamArtist/TransitStay/tests/smoke/extension.spec.ts: many UX-focused tests (selection limits, teardown idempotency, pointer transparency, live synchronization) asserting perceived-behavior
Expertise
Browser Extensions Development• Senior
Frontend Architecture & Build Tools• Middle
Industries
Real Estate• Middle
Technologies
Frontend
Node JS• Senior • 7y+
GraphQL
Next.js
esbuild
Recommendations
- Lead browser-extension features that require secure data ingestion, DOM-adapter state machines and non-interference with host pages (content-script architecture, message/port isolation).
- Design and build small to medium front-end component systems with accessible, test-covered UI for overlays and mapping widgets using Shadow DOM patterns shown in the overlay.
- Develop developer tooling and local supervisor services (auto-host dashboards, packaging scripts, cross-platform service installers) where Node runtime control and packaging matter.
- Implement performance-sensitive rendering pipelines or client-side data validation (vector-tile decoding, streaming validation, and measured render budgets).
Repositories
The developer's experience in this domain has been verified based on AI analysis of the following repositories:
Senior QA Engineer
Confidence: Medium SDET
A capable senior-level QA/software engineer focused on building reliable end-to-end test harnesses and developer tooling with strong automated E2E and integration coverage. The strongest proven skill is E2E automation and test infrastructure, evidenced by the Playwright harness and extension test suite (tests/smoke/* and support/extension-harness.ts) together with a performance checkpoint that records structured evidence. There is little public evidence of CI workflow definitions, external bug-tracker-driven root-cause reports, or broad distributed-load testing infrastructure.
Test Automation Frameworks
7/10
Building automated tests
Robust Playwright-based E2E harness with custom fixtures, host-permission helpers, and targeted fixture routing; clear selector discipline and helper abstractions for extension popup and region-pack routing.
Evidence
TransitStay/playwright.config.ts: Playwright config with webServer and trace-on-failure
TransitStay/tests/smoke/support/extension-harness.ts: grantHostAccess / routeRegionPack / openPopup helpers and hostPermissionCandidates
TransitStay/tests/smoke/extension.spec.ts: high-coverage E2E scenarios using context routing and extension popup interactions
Test Coverage & Strategy
7/10
What and how to test
Risk-focused test strategy with negative-path suites, enumerated manifest-failure cases, and a dedicated checkpoint test that encodes performance and behavioral invariants rather than only happy-path assertions.
Evidence
TransitStay/tests/smoke/extension.spec.ts: enumerated manifest failure cases (manifest-wrong-signature.json etc.) exercising precise error codes
TransitStay/tests/smoke/checkpoint.spec.ts: Checkpoint 1 harness that asserts memory and rendering thresholds and writes structured evidence
API & Integration Testing
6/10
Testing how parts work together
Integration testing covers HTTP dashboard APIs and supervisor lifecycle; the region-pack module implements strict schema and signature validation (contract-level parsing) which supports contract-like validation of external artefacts.
Evidence
local-server/src/supervisor.js: /api/apps and mapping endpoints with validation and error responses
local-server/tests/integration.test.js: end-to-end tests exercising dashboard API and mapping workflows
TransitStay/src/region-pack.ts: parseManifest / verifyManifestSignature / parseCatalogue implementing strict manifest and catalogue schema checks
Performance & Load Testing
5/10
Testing speed under load
Custom performance checkpoint that measures resident memory, rendering work per frame, settled projection error and enforces numeric thresholds - focused, effective micro-performance validation rather than broad load testing.
Evidence
TransitStay/tests/smoke/checkpoint.spec.ts: resident memory sampling, movementCycles, render/frame thresholds and assertions
TransitStay/entrypoints/transit-overlay.ts: instrumentation of render counts and frame work ms exposed via data- attributes used by tests
Bug Reporting & Analysis
3/10
Finding and describing bugs
Some in-code test evidence of capturing and recording checkpoint evidence for later analysis, but no visible public bug tracker integrations or linked external reproducible issue reports in the analyzed files.
Evidence
TransitStay/tests/smoke/checkpoint.spec.ts: writes structured evidence JSON (evidence/checkpoint-1-local.json) capturing blockers and measurements
CI Test Integration
5/10
Running tests automatically
Test scripts and Playwright configuration are wired into package.json scripts and use trace retention on failure; however there are no visible CI workflow definitions (GitHub Actions / GitLab CI) in the analyzed files to show end-to-end CI test integration.
Evidence
TransitStay/package.json: test, test:smoke, test:checkpoint and typecheck scripts
TransitStay/playwright.config.ts: config with webServer and trace: 'retain-on-failure'
Expertise
SDET & Test Engineering• Senior
Performance & Load Engineering• Middle
Industries
Real Estate• Middle
Technologies
QA
CI/CD
Playwright
Sentry• 4y+
Recommendations
- Develop and own Playwright E2E suites and test harnesses for browser extensions and complex client-side integrations (use the existing tests/smoke harness as a baseline).
- Build and maintain developer-local tooling and supervisors that require robust integration and mapping flows (extend the Multi App Host supervisor and its API).
- Implement and extend performance checkpoints into CI (convert the checkpoint harness into a reproducible CI job and add historical artifact upload for trend analysis).
- Hardening and contract testing for external artefacts - expand region-pack schema validation into a contract test runner and automated mutation/fuzz tests for manifest handling.
Repositories
The developer's experience in this domain has been verified based on AI analysis of the following repositories:
