Application Protocol Engineer – Threat Intelligence Research Center
Witness new industry leading products being born and have the opportunity to contribute from the beginning.
Identify, research and implementing well-known application and protocols on the Internet, thus enhancing the power of a next generation traffic engine to simulate complex real-world traffic scenarios targeting infrastructure such as Web Application Firewall, Next Generation Network Firewall, Server Load Balancers, Proxy Servers, etc.
You will dive deep into the packet of client-server communications to understand how applications and protocols work.
Enhance your skills and expertise on developing application protocols, reverse engineering techniques and application flow signatures.
- Incorporate RFC’s or other specifications on well-known protocols into the next generation products utilizing Python;
- For application protocols that are either proprietary or undocumented, you will setup an infrastructure to capture the traffic in order to understand the protocol, reverse engineer it and incorporate it into the product.
- Identify and investigate application data in order to develop patterns (application signatures) that are able to detect and classify applications as part of proprietary discovery intelligence technologies.
- Good programming skills in Python.
- Deep understanding of the TCP/IP stack and OSI model;
- In-depth knowledge of protocol analyzers (e.g. Wireshark, Fiddler);
- Knowledge of application layer protocols;
- 3+ years of development experience;
- Creative problem solving approach to projects;
- Communicating and collaborating with others;
- College degree in CS or EE or equivalent experience;
Nice to have:
(Any of the following is considered a plus)
- Network protocol development experience;
- Working knowledge of XML;
- Understanding of application data encoding and reverse engineering
- Experience with unit testing;
- Experience with Agile methodology;
- Experience with Continuous Integration;
- Experience with TDD;
- Experience with tools such as Vagrant, Docker, and/or LXC;