Computer Engineer II 8/25/2016
Assured Information Security, Inc.
JOB DESCRIPTIONAPPLY DESCRIPTION
The Adaptive System Technology (AST) team is focused on building systems that can learn from, change to fit, and quickly adapt to various computing environments including individual host machine, networked and distributed systems. This team s products learn from their surrounding environment through passive and active probing and change system behavior based on the knowledge obtained. The AST team is interested in studying these areas to understand how best to build software products to protect cyberspace.
As a member of the AST, you will be part of a research and development team creating generation-next technologies and performing vulnerability analysis in support of the warfighter.
Duties and Responsibilities:
* Must be well grounded in the foundational elements of computer security, system vulnerability analysis, and software engineering.
* Must be able to work as part of a team researching, designing and building novel software capabilities.
* Be a participating member of an Agile/Scrum development team.
* Commitment to contributing to project documentation throughout the systems development life cycle.
* Must be able to work independently, as needed, on research and development related tasking.
* Strong computer programming and object-oriented design knowledge required, including development, debugging, and testing skills.
* 2 years of experience in 1 of following programming languages; C/C++, Java, Python.
* 2 years experience working with Linux operating systems.
* Have developed software to operate for either Linux and/or Windows operating systems.
* Experience with GIT or other version control system.
* Experience with Linux operating system including kernel modules and system drivers, Experience with network protocols and network programming.
* Experience with virtualization tools and configuring virtual machines including network settings.
* Hands-on experience with scripting languages such as bash.
* Database development skills including a solid understanding of database technologies, and logical and physical data modeling.
* Understanding the design and implementation of applications with highly optimized and scalable architectures.
* Solid understanding of network fundamentals, including use of network analysis tools such as Wireshark and Nmap.
* Knowledge of the Java Swing technology.
* Knowledge of software development on popular UNIX distributions; e.g.; Redhat, BSD, and Ubuntu.
* Knowledge of OSI Network model, protocols, and communications process such as CAN and Modbus.
* Knowledge of session management, object relational mapping, XML web services, and agile development methodologies desired.
* Knowledge of software development on popular Windows versions; e.g. XP, 7, and 8 and popular mobile OS versions; e.g. IOS and Android.
* Understanding of information security practices (cryptography, etc.)
* Knowledge of network protocols, e.g.; HTTP, HTTPS, TCP, UDP, SMTP, SMB, RPC, FTP, SNMP, DHCP.
* Knowledge of existing memory management and scheduling algorithms.
* Knowledge of open source software and development tools.
* Entry level knowledge of tools used for software analysis including:
* IDA Pro and open source disassemblers
* Windows-based user-mode and kernel-mode debuggers
* Run-time analysis tools
Security Clearance Requirements: Must be a U.S. citizen. Applicants selected will be subject to a government security investigation and must meet eligibility requirements for access to classified information.
Bachelor's Degree in Computer Science, Software Engineering, Computer Engineering or related discipline with at least 2 years of job related experience; Or the equivalent combination of education and experience.