OVERVIEW
Context
External business systems offered different ways to integrate. APIs were used where they could support the workflow; other cases required authenticated browser interaction, persistent session state, security prompts, and occasional human intervention.
PROBLEM
What had to be solved
The engineering problem was not simply launching Chrome processes. It was operating API and browser-based workflows over long periods while keeping authentication, process state, failures, recovery, and operational support manageable.
CONSTRAINTS
System boundaries
- Authenticated workflows could include passwords, multi-step login states, 2FA, PIN or security prompts, and human intervention.
- Service restarts could not automatically destroy valid running browser sessions.
- Multiple concurrent sessions required isolated profiles, explicit ownership, proxy allocation where needed, and per-session remote-debugging endpoints.
MY RESPONSIBILITY
Back-End & Automation Technical Lead
- Led the technical evolution of the back-end and browser-automation architecture while remaining hands-on with critical implementation.
- Owned integration design, browser-lifecycle decisions, reliability patterns, technical reviews, and production-readiness validation.
- Designed the separation between platform-specific workflow logic and the dedicated service responsible for browser ownership, state, and lifecycle.
ARCHITECTURE
System model
ENGINEERING CHALLENGES
Where the complexity lived
- Maintaining authentication continuity across cookies, local storage, open tabs, and other session state held inside isolated profiles and long-running Chrome processes.
- Maintaining explicit ownership for multiple isolated sessions, including profile paths, allocated proxies where required, debugging ports, and expiry metadata.
- Supporting remote session viewing and inspection when workflows required operational support or human intervention.
- Reattaching automation to an existing long-running browser through its remote-debugging endpoint after the management service restarted.
- Distinguishing stale session metadata or processes from valid running sessions during cleanup and recovery.
APPROACH
How the solution was structured
- Separated workflow orchestration, platform-specific automation, and browser lifecycle responsibilities. Puppeteer or Playwright could be used where a workflow required them without making either library the browser-management boundary.
- Used per-session remote-debugging endpoints and Chrome DevTools Protocol control to reconnect automation to existing sessions without coupling each task to the lifetime of a browser process.
- Persisted browser and session metadata separately from process lifetime so the management service could recover operational knowledge after restart and make explicit cleanup decisions.
SYSTEM EVOLUTION
Architecture evolution
Workflow Automation
Platform-specific automation and operational workflows.
Structured Back-End Integration
Services, API orchestration, and explicit process/session state.
Browser Infrastructure
Persistent sessions, isolated profiles, proxies, and remote debugging/control.
Dedicated Browser Management
Browser lifecycle and ownership separated from automation logic.
Agentic Exploration
A Browser Use proof of concept tested attaching a task-oriented agent to an existing CDP session. It was exploratory and was not deployed as production functionality.
RELIABILITY
Production behavior
- Retries, timeouts, validation, safe reruns, and recoverable failure paths.
- Persisted browser/session metadata and structured logs kept operational state available for recovery, inspection, and support.
- Stale browser cleanup without treating every service restart as authority to terminate valid sessions.
OUTCOME
What the work established
- A platform that could use APIs or controlled browser sessions according to each external workflow's integration capabilities, with explicit browser ownership, persisted session knowledge, recovery behavior, and support for remote inspection.
TECHNICAL CONTEXT
Technologies and systems
Third-party platform names, employer-sensitive workflows, credentials, account data, and proprietary implementation details are intentionally omitted.