What are the responsibilities and job description for the Software Engineer II - Data Plane position at Vectra?
Position Overview
You’ll be making software that defends against cyberattacks. What that looks like will vary, from writing efficient network protocol parsers, finding ways to stitch data together without blowing out memory, diagnosing performance bottlenecks, improving host and user identification algorithms, and devising automated tests to make sure nothing breaks. You’ll use your knowledge of algorithms, data structures, and design patterns to make old code better and new code beautiful. You will be using logic and intuition to troubleshoot problems in customer environments.
Responsibilities
- Interpret product requirements into software designs, implementations, and tests that take performance, maintainability, and operational efficiency into consideration
- Monitor, troubleshoot, and improve systems to deliver outstanding reliability to customers
- Work with other groups including Product Management, Data Science, Security Research, and UX to help customers simplify security
- Provide technical leadership as you grow into the role
Requirements:
- Growth mindset
- 3 years professional C
- 3 years developing software for Debian-based Linux
- Strong Python experience
- Knowledge of data structures and algorithms as they relate to performance
- Ability to troubleshoot complex systems
- Strong communication & collaboration skills
- Willingness to get things done, take initiative, and own quality
Preferred:
- Knowledge of networking principles and protocols such as TCP, UDP, and DNS
- Knowledge of Git, Jenkins, CMake, Docker
Education:
- B.S, M.S, or Ph.D. in Computer Science (or equivalent experience)