Mid/Senior Software Engineer – Network & Security Focus
Get to know us better
CodiLime is a software and network engineering industry expert and the first-choice service partner for top global networking hardware providers, software providers and telecoms. We create proofs-of-concept, help our clients build new products, nurture existing ones and provide services in production environments. Our clients include both tech startups and big players in various industries and geographic locations (US, Japan, Israel, Europe).
While no longer a startup - we have 250+ people on board and have been operating since 2011 we’ve kept our people-oriented culture. Our values are simple:
- Act to deliver.
- Disrupt to grow.
- Team up to win.
The project and the team
The goal of the project is to develop core network and security features close to the kernel and network stack. About half of the tasks are in C/C++ for low-level modules, and the other half in Python for automation, tooling, and integration.
The project involves close collaboration with a team from our client - it is globally distributed, with members in the USA and India, and now a new team of software engineers is joining in Poland.
We work on multiple interesting projects at the time, so we may invite you to the interview for another project if we see that your competencies and profile are well suited for it.
Your role
As a part of the project team, you will be responsible for:
- Designing, implementing, and maintaining network/security features (firewall, NAT, proxy, intrusion prevention, filtering)
- Integrating with kernel or low-level modules (netfilter, packet capture/forwarding logic)
- Building advanced traffic inspection and filtering logic (URL filtering, protocol analysis, deep packet inspection)
- Troubleshooting complex network failures (asymmetrical routing, NAT/firewall interactions, dropped reply traffic)
- Collaborating with architects, QA, and other engineers on secure network systems
- Reading and applying protocol & security specs (IP, TCP, HTTP, SSL/TLS)
- Ensuring performance, security, and robustness in production environments
Do we have a match?
As a Software Engineer, you must meet the following criteria:
- Strong programming skills with approximately 50% in C/C++ and 50% in Python
- Solid foundation in computer networks: IP, TCP/UDP, routing, NAT, proxy patterns
- Deep understanding of firewall/security systems: packet filtering, stateful firewalls, URL filtering, IPS/IDS
- Experience debugging tricky traffic flows (traffic goes forward but reply doesn’t return)
- Ability to implement or consume proxy, inspection, HTTP/HTTPS parsing
- Experience with kernel-level or system-level network hooks/modules (Linux netfilter, packet sockets)
- Good command of English (B2 level or higher)
Beyond the criteria above, we would appreciate the nice-to-haves:
- Experience with firewall vendor software (iptables, nftables, Palo Alto, Fortinet, Cisco ASA)
- Familiarity with SSL/TLS termination and proxy SSL inspection
- Knowledge of IDS/IPS systems (Snort, Suricata)
- Experience in high-performance networking systems
- Familiarity with container/virtualization networking
- Exposure to distributed or scalable systems
More reasons to join us
- Flexible working hours and approach to work: fully remotely, in the office or hybrid
- Professional growth supported by internal training sessions and a training budget
- Solid onboarding with a hands-on approach to give you an easy start
- A great atmosphere among professionals who are passionate about their work
- Department
- Engineering PDT
- Role
- Backend
- Locations
- Poland
- Remote status
- Fully Remote
- Level
- Senior, Mid
Colleagues
Already working at CodiLime?
Let’s recruit together and find your next colleague.