Location: Remote (preferably LATAM/Americas Timezone)
Team: Protocols & Agents
About the Role
We’re looking for a Software Engineer to join our Protocols & Agents team. Most of your work will live in the agents folder of our open-source project, where we’re building new agents in Rust and maintaining existing ones in Go. The bulk of the work is around networking and proxies — things like multiplexing TCP streams over persistent gRPC/WebSocket channels, building secure, lightweight agents, and making systems that other developers can actually understand and extend.
This isn’t a role for networking paper-certified “experts.” We’re looking for curious engineers who enjoy getting close to the bytes, implementing real protocols, and writing code that balances complexity with clarity. You’ll primarily work on agents, but you’ll also touch the gateway and backend when it comes to designing and implementing communication protocols.
What You’ll Do
- Design and implement networking components in Rust and Go.
- Work on protocol-level features like multiplexing, secure transport, and connection management.
- Build software that junior developers can read and learn from — simple, well-structured, understandable.
- Collaborate asynchronously with a small, low-ego team where everyone is trusted to take ownership.
- Raise concerns before due dates and be responsible for what’s expected from you.
- Occasionally, contribute to gateway and backend development where agent communication is involved.
What We’re Looking For
- Strong software engineering background with experience in more than one language.
- Practical experience in lower-level or systems engineering (e.g., sockets, networking, concurrency, protocols).
- Ability to criticize, implement and reason about things like TCP proxies, gRPC, WebSockets, TLS, and multiplexing.
- A mindset for clarity: you write code that is correct, simple, and maintainable, not “clever for its own sake.”
- Comfortable working remotely and asynchronously, with a high sense of responsibility.
Nice to Have (not mandatory)
- Experience with both Go and Rust (or strong ability to learn quickly).