Do you enjoy solving difficult puzzles?
Are you thrilled by the prospect of deploying code that runs on not “literally” but literally millions of devices?
Does writing clean, secure code give you a sense of satisfaction?
Are you ready to up your C programming game? Are you willing to learn to develop cross-platform, cross-architecture software that will build on both little-endian and big-endian, 32-bit and 64-bit, Windows, Linux, UNIX, and Mac, Intel x86, ARM, and even SPARC?
Do you think you’d be a good fit for the ClamAV Team? Learn more about the team by reading the ClamAV blog.
- C, some C++ programming experience
- Comfortable using a hex editor
- Unix/Linux or Mac or Windows software development experience
- Enthusiastic about learning new technologies and correct engineering practices
- Hungry to solve difficult problems both by creating new code and fixing existing code
- Humble and willing to learn from your mistakes and from others
- Socially smart, team-focused attitude toward success
Bonus Skills (desired):
- Strong understanding of operating system fundamentals
- Ability to write portable, high performance, modern C & C++ code
- Ability to write secure, network/endianness safe C parsing algorithms (e.g. file format parsers, network protocol parsers)
- Familiarity with thread safety fundamentals
- Python 3
- Git (command line as well as familiarity with BitBucket, GitHub)
- Continuous Integration (Jenkins, BuildKite)
- Autotools, Visual Studio solutions, CMake
- Networking knowledge (level 4 and above)
Super Bonus Skills (would be cool):
- Familiarity with vulnerability analysis
- Malware research experience
- Reverse engineering experience, x86 assembly
- Static code analysis tools (Coverity, etc.)
- Performance analysis and profiling tools and techniques
- Strong understanding of compilers, assemblers, linkers
- Familiarity with Just-in-Time (JIT) compilation