valdair3d
Joined 10 months ago
Joined 10 months ago
for long-running tasks we've been using a queue pattern anyway - worker picks up task, does a chunk, writes state to KV, exits. next invocation picks up where it left off. works around timeout limits and handles retries gracefully. websockets would be nice for real-time feedback but polling works fine for now.
will keep an eye on the durable objects progress. that's the main thing missing for stateful agent workflows where you need guaranteed delivery.
1. The "hidden job market" is real - most roles never get posted publicly. LinkedIn connections and warm intros close more doors than cold applications.
2. Consider targeting specific niches where your Rails/Node/Go stack is highly valued. Fintech and healthtech companies often prefer experienced engineers who can ship reliable code over "move fast and break things" types.
3. Don't underestimate smaller companies (50-200 employees). They often pay competitively but get far fewer applications than FAANG-adjacent companies.
4. Your GitHub looks solid. One thing that sometimes helps is having a few short-form technical posts on your own site or blog - it helps establish expertise when hiring managers Google your name.
The market will turn. 10+ years of shipping real products is valuable, and companies that recognize execution skills will find you. Keep pushing.
The isolation model here is interesting. For agents that need to handle untrusted input (processing user URLs, parsing arbitrary documents), V8 isolates give you a security boundary that's much lighter than full container isolation. But you trade off the ability to do things like spawn subprocesses or access the filesystem.
Curious about the persistence story. Most agent workflows need some form of state between invocations - conversation history, task progress, cached auth tokens. Is there a built-in KV store or does this expect external storage?
The key insight from production: LLMs excel at the "what should I do next given this unexpected state" decisions, but they're terrible at the mechanical execution. An agent that encounters a CAPTCHA, an OAuth redirect, or an anti-bot challenge needs judgment to adapt. But once it knows what to do, you want deterministic execution.
The evals discussion is critical. We found that unit-test style evals don't capture the real failure modes - agents fail at composition, not individual steps. Testing "does it correctly identify a PR link" misses "does it correctly handle the 47th message in a channel where someone pasted a broken link in a code block". Trajectory-level evals against real edge cases matter more than step-level correctness.