Apps Developer for ATI Research Center
A vizualizat 90% din aplicari in ultimele 30 de zile, in maximum 72 de ore
Entry (0-2 ani), Middle (2-5 ani), Senior (5-10 ani)
In this position you will get the chance to identify, research and implementing well-known application and protocols on the Internet, thus enhancing the power of our 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.
You will witness new industry leading products being born and have the opportunity to contribute from the beginning.
These experiences will enhance your skills and expertise on developing application protocols, reverse engineering techniques and application flow signatures.
- You will 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.
Required Skills and Experience:
- Good programming skills in Python.
- Deep understanding of the TCP/IP stack and OSI model;
- In-depth knowledge of protocol analyzers (. Wireshark, Fiddler);
- Knowledge of application layer protocols;
- Creative problem solving approach to projects;
- Communicating and collaborating with others;
- College degree in CS or EE or equivalent experience;
- 1+ years of development experience;
- 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;