Tailscale is building the new Internet by delivering software that makes it easy to securely interconnect people and their devices. The Software Engineer will contribute to core client connectivity features, enhance connectivity offerings, and resolve complex network issues while collaborating with various teams to develop integrated network solutions.
Responsibilities:
- Design, build, test, and document core Tailscale’s client-side networking software
- Advance product features by building upon or merging established industry network protocols with Tailscale's specific designs and frameworks
- Adopt a security-centric approach to both architecture and coding to guarantee the resilience and safety of networking modules
- Evaluate and optimize the performance, reliability, and scale of our software across a wide array of technical platforms and hardware
- Provide expert consultation and support the customer success teams with critical network escalations within key customer environments
- Engage actively with the open-source community and contribute to relevant projects
Requirements:
- Significant experience with networking software and diagnosing networking issues
- Possess a comprehensive grasp of networking engineering, such as routing, VPNs, IP address management, and NAT traversal
- Proficiency in Go or other low-level languages (e.g. C/C++, Rust), including a strong grasp of concurrent programming and techniques for optimizing performance
- Ability to give and process constructive feedback, as well as work independently
- Flexibility to adjust to the dynamic nature of a startup
- Excellent written and verbal communication skills
- Experience with large scale distributed systems is highly desirable
- Knowledge of low-level OS network stacks is highly desirable