Principal Software Engineer
StackPath is cloud platform built at the internet’s edge, providing infrastructure and services physically closer to the source or destination of data than hyperscale cloud service providers. StackPath edge compute—including Virtual Machines and Containers—and edge applications—including CDN and WAF—are strategically located in the world’s most densely populated areas, and united by a secure private network backbone and a single management system. Customers ranging from Fortune 50 enterprises to one-person startups trust StackPath to give their latency-sensitive workloads and applications the speed, security, and efficiency they require. For more information, visit stackpath.com and follow StackPath at www.fb.com/stackpathllc and www.twitter.com/stackpath.
About the Role
We are seeking to hire a Software Engineer with deep understanding of networking concepts and Envoy Proxy server. Your primary responsibility will be to design and develop software that powers several of our core services and to coordinate with other teams working on different layers of the infrastructure.
This role will report to our: Director of Software Development
Essential Duties and Responsibilities
Collaborate with agile teams to develop Edge applications by providing architecture guidance and hands-on technical coding/scripting support during all phases of agile SDLC.
- Design and develop next Gen Proxy Server using Envoy for various Edge Application.
- Design, build, and maintain efficient, reusable, and reliable C/C++ code.
- Build efficient Applications with optimal performance and elastic scalability.
Desired Skills and Experience
- Strong proficiency in C/C++, Go with fair knowledge of the language specification.
- Thorough knowledge of the data structures, algorithms and modern C++.
- Experience working with Envoy proxy and preferably envoy contributor.
- Knowledge of asynchronous programing and multi-threaded programming.
- Experience developing and debugging networking protocols (TCP/IP, HTTP1.x/2, TLS etc).
- Experience with Linux development environment.
- Identify bottlenecks and bugs, and devise solutions to these problems.
- Familiarity with debugging and performance analysis tools, such as GDB, Valgrind, Gperf, Address Sanitizer, bcc, flamegraphs, etc.
- Implementation of automated testing platforms and unit tests.
- Proficient understanding of git versioning tools.
- 5+ years of professional software development experience.
- Bachelor’s in computer science or related field.
- Experience with gRPC, message streaming (Kafka, zeromQ) is plus.
- Experience in building large-scale distributed systems such as DNS, CDN/Edge, Load Balancer is a big plus.
- Experience with modern build system like Bazel.
- Solid understanding in Kubernetes and Docker/OCI technology.
This job description is not intended to be all-inclusive.
StackPath is an Equal Opportunity Employer. EOE/AA M/F/D/V
If your experience and qualifications match our current needs, a member of our human resources team will contact you. We look forward to hearing from you.