Location: Richland, WA - Department: Engineering
As a software engineer working on Cypherpath's cutting edge products, your mission will be to ensure that the software solutions are engineered to be modular, clear, composed, simplistic, transparent, robust, representative, diverse, and extensible. You will be in the thick of solving problems in a way most engineers never get to experience. Throughout the day you will work anywhere from the kernel level to the application level. You will need the flexibility to focus on tiny implementation details but still abstract yourself to the level of a human user. You will need to dive into how the software performs, packets flow, applications communicate, and how provisioned resources interact with hardware. You will be responsible for creating new code, algorithms, and working with other Cypherpath engineers.
A successful candidate will have a strong passion for writing software, including code fluency, software engineering best practices, work ethic, and ability to work as part of a team. Cypherpath is particularly interested in candidates who are familiar with networking software, Linux systems, virtualization, security, and candidates that regularly contribute to open source projects.
- Support product development by participating in sprints.
- Work with other engineers to design, solve, and implement new functionality.
- Investigate problem areas and solve bugs.
- Collaborate and add value by providing comments and suggestions.
- Utilize software engineering best practices such as code repositories, build processes, and design patterns.
- Work collaboratively and professionally with other Cypherpath employees.
- Provide level of effort estimates and evaluate new technology options.
- Document solutions and explain their usage.
- Assist quality assurance with testing and validation of software systems.
- Perform other duties as assigned.
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
- Avid Linux user with strong understanding of open source.
- Demonstrable ability to use compiled languages such as C, C++, Rust, etc.
- Expertise in data structures, algorithms, and finite automata.
- Expertise in Vim/Emacs.
- Demonstrable ability to use virtualization technology such as KVM, Xen, or VMware.
- Experience writing network or virtualization software.
- Knowledge of Bash and Shell scripting.
- Experience with distributed revision control systems such as Git, Mercurial, etc.
- Knowledge of the Linux kernel and kernel modules.
- Familiarity with common Linux utilities such as, Grep, Awk, Sed, Cut, Pipes, etc.
- Resourceful with an ability to think creatively.
BS/MS in Computer Science or related field/degree, and/or equivalent work experience.
Experience with a technology-related company preferred.
Email your resume to firstname.lastname@example.org