Open Positions

Position: Full-Time OISF Employee
Hours: 40 hours per week – Monday thru Friday or as needed
Location: Remote

Description
Reporting to OISF’s Board of Directors, the President will oversee all day-to-day management and operations of OISF. This is an executive level role within OISF that is responsible for ensuring OISF’s mission, team, consortium, and community members thrive. This position requires an innovative, self-directed leader experienced in managing a nonprofit organization and familiar with open source development and communities. The President may also be tasked with working with OISF’s board of directors, development leadership, and others to improve OISF operational efficiency and quality while identifying steps to implement them.
This leadership position requires taking the initiative, developing strategies, and action plans to promote OISF or Suricata or to make operations, SuriCon, and other events more efficient and cost-effective.

Responsibilities
● Oversee and manage all operations of OISF.
● Expanding consortium memberships and opportunities for income.
● OISF board management including reporting, strategic planning, and meeting coordination.
● Engage with the OISF team, consortium members, and community at large positively and professionally.
● Manage all human resource functions.
● Oversee operational support vendors such as payroll, bookkeeping, and tax-preparation.
● Manage and oversee OISF’s Deputy Director.
● Provide leadership support over Suricata’s annual user conference (SuriCon).
● Develop policies and procedures for improving OISF’s daily operations and communication.
● Support new initiatives as needed for both OISF and Suricata.

Requirements
● Executive leadership experience ideally in a nonprofit or information security area.
● Experience managing and leading a multicultural international team.
● Professional and mature approach to independent tasks and remote working.
● Familiarity with information security concepts, Suricata, and open source communities.
● Excellent understanding of budgeting and forecasting.
● Proven writing skills in general business (email), online chat rooms, and marketing and media channels.
● Strategic thinking and analytical skills.
● Understanding of effective organization and communication methodologies and tools.
● Strong knowledge of project management concepts and techniques.
● Able to identify, analyze, and solve problems in collaboration with team members.
● Proven success working in a high-paced, deadline-oriented environment.
● Strong and time management skills even when it falls outside standard business hours.
● Demonstrated critical thinking and decision-making abilities.
● Willingness to keep abreast of new technologies akin to Suricata and open source communities.
● Able to travel – international and domestic.

Executive Roles

These roles work strategically to oversee the development of Suricata and the Open Information Security Foundation’s operations.

Required: C or Rust (able to write and debug basic programs)
Required: Linux/Unix
Plus: Lua/Python
Plus: Suricata/Snort/Zeek, InfoSec in general
Part-time (16h/w+) or full-time

Tasks: develop Suricata, triage & analyze bugs reported by users, fix or escalate bugs, develop new features.

Learning opportunities: learn how to use and support Suricata. Learn interaction with open source community. Learn operating in a virtual team. Improve C skills. Learn to use Lua, Python and Rust. Attend various Suricata training, both for users and developers.

This person works to fix bugs, and develop new features of limited size and complexity. Also assist other developers with their larger change sets. Together with ‘support staff’ triage bugs, fixing them where possible or escalating them where necessary.

Day to day workflow: working under guidance of Management & Senior level developers. Work on high priority tickets.

Required: One or more years of C or Rust and Python
Required: Linux/Unix
Required: InfoSec experience
Plus: Suricata/Snort/Zeek
Plus: Lua
Part-time (16h/w+) or full-time

Tasks: develop Suricata, assist ‘junior’ with bug triage. Develop new features. Perform code review for team and community contributions.

Learning opportunities: same as ‘junior’, plus: code reviews, designing features and/or solutions to issues. Work independently. Attend various Suricata training, both for users and developers. Assist trainers.

Growth opportunities: opportunity to grow into subsystem maintainer. Starting by maintaining smaller components within a subsystem.

This person works to fix more complex bugs and develops new features under guidance of management. SuriCon road-map is leading here. Assist ‘junior’ in fixing issues.

Required: 5+ years C. Be able to interact with community easily. Work independently. Perform code reviews.
Plus: 1+ Rust, 3+ Python.
Plus: already made contributions to Suricata’s code base
full-time (32h/w+)

Tasks: develop complex new features. Refactoring of subsystems. Maintain one or more subsystems (e.g. ‘packet capture’, or ‘stream engine’). Perform code reviews for team and community. Assist team in complex bugs/issues triage. Help improve development processes and overall quality of the project.

Growth opportunities: become a (developer) trainer. Become part of leadership team. Help guide & interact with advisory council. Present work at SuriCon and 3rd party conferences as an OISF representative or personally where applicable.

This person works on major new features such as new detection capabilities, complex new protocols and performance optimizations. The Suricata road-map as created at the SuriCon conference determines for a large part what we work on. Suggest and discuss designs and design choices. Assist rest of the team in addressing complex issues, helping with code review.

Core Suricata Developers

These roles/jobs are for work on the Suricata program itself. Suricata is written mostly in C, which a growing share of Rust code.

Required skills: Python, Linux/Unix, Bash, CI tools (e.g. github actions, gitlab-ci, jenkins)
Plus: experience with Suricata/Snort/Zeek/Tcpdump/Wireshark
Plus: experience with development tools like gcc, clang, scan-build, fuzz testing and/or other relevant code quality tools

Tasks: develop and maintain Suricata-Verify, help manage the Suricata CI efforts and implement security related QA steps.

Suricata-Verify is a Python tool to streamline testing many features of Suricata. Both the tool itself, and development of new test cases, is part of this. On the CI side Suricata uses a mix of public tools, such as GitLab/GitHub CI, combined with private tools and tests.

Part-time: 12-20h/week

Required skills: Suricata, Linux/Unix, good communicator via e-mail, chat and phone.
Plus: experience in open source communities
Plus: experience with doing professional support

Tasks: First responder to support requests in the Redmine ticketing, on the mailing lists and through our other public and private support channels such as the official commercial Support program that is currently in a pilot phase.

Update FAQ documents and general documentation based on questions and feedback. Triage issues, collect necessary information for further processing.

Part-time: 12-20h/week

Supporting Development Roles

These roles/jobs are for work on the Suricata program itself. Suricata is written mostly in C, which a growing share of Rust code.

How to apply

There are several ways to apply. You can send us your resume. Make sure to include FOSS experience (if any) and also specify what you are looking for in this work. Send your email to info@oisf.net, or reach our through our Contact form.

You can also join the community as a volunteer contributor first. Start helping out in the community, with documentation, bugs, feature development, etc. Please let the team know you’re willing to join, so that we can help you with feedback and guidance on those tasks.

Questions

If you have questions or want to apply, please email us at info@oisf.net, or reach out to us through Contact