Imagine a world dedicated to Security Without Compromise. Synack, headquartered in Silicon Valley with regional offices around the world, has protected over 100 global organizations by reducing companies security risk & increasing their resistance to cyber attack. How do we do this? By utilizing the worlds best & most trusted team of ethical hackers who test through our powerful & controlled platform to deliver real security without compromise. At Synack, we arent afraid to think outside the box or take on big challenges. Backed by top-tier venture capital firms including Kleiner Perkins Caufield & Byers, Microsoft, & Google Ventures, Synack's mission is to leverage global security talent coupled with advanced technology to help enterprises discover security vulnerabilities before they become business problems.
Are you ready to leverage your development skills to build a platform that will impact cyber security? As a Senior Software Engineer, you will be part of a fast-paced team & gain exposure to the newest technologies in security. If you have a knack for coding challenges & love finding a solution, youll fit right in with us! Sounds like you? Keep reading
Heres what you'll do
- Adopt & follow best practices in building high-performance, efficient, resilient, scalable software which handles millions packets per second
- Write software using best practices for software design with unit & functional tests & comprehensive code coverage. Be accountable & take ownership of your code
- Interact with Product Management to refine product requirements; work efficiently in a cross-functional team across multiple projects
- Work on the backbone of Synack Product suite: the automated security assessment platform
- Build both RESTful & MQ-based services for asynchronous collection & processing security data using golang, SQL & NoSQL databases
- Utilize AWS, GCP, Azure hosted services in the architecture, using your prior experience; keep abreast of GCP & Azure & AWS offerings
- Analyze, evaluate, propose technologies to efficiently address product requirements in the software design
- Understand & be able to identify bottlenecks across the system & evaluate performance of various components
- Design new components for microservices architecture & docker
Here's what you'll need
- BS degree in Computer Science (or related field)
- 5+ years of software development experience
- Production experience creating software with Go is required (or 2+ years of C/C++ experience in system or networking or client-server programming to help the transitioning to golang)
- Basic experience with building scalable, resilient, high-performance systems
- Basic understanding of TCP/IP networking, communications, synchronous & asynchronous programming models
- Knowledge of building RESTful or messaging based services at scale
- Understanding of technologies & software engineering fundamentals (concurrency, non-blocking networking,resilience patterns, system performance, Amazon Web Services, etc)
- Experience with Virtualization, container, & container orchestration technologies: Docker, AWS ECS and/or Kubernetes
- Knowledge of both relational & nonrelational database systems such as MongoDB, MySQL, Postgres, BigQuery etc.
- Experience with queueing/messaging systems such as Kafka, RabbitMQ, SQS etc.
- Experience with continuous deployment processes
- Experience with software performance monitoring VPN technologies
- Network fundamentals such as routing, IP subnetting, & network design nice to have
- Security experience including understanding of TLS / Firewalls is a plus
- Python knowledge is a plus
- Good communication skills
Its all hands on deck, its hard work, its winning, its Synack.
Synack is committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status.