C (master)
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 200+ 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
We are working with the latest cutting-edge technologies used in the world of modern SDNs, SD-WANs, network routers and switches.
After joining our team, you will develop, improve new and already existing features. You will have a unique chance to work on software development widely used around a world by thousands of companies.
The scale of the technical problems will have an influence on your experience and it’s giving incredible possibilities of gaining knowledge.
What else you should know :
The team consists of developers, QA automation and DevOps engineers
We use Scrum / Agile methodology.
Your role
As a part of the project team, you will be responsible for :
Work in agile methodology and collaborate with the team
Develop needed functionality
Measure, debug and improve performance of the whole system
Deliver unit tests for your code
Fix bugs efficiently and effectively
Document the code changes and be active source code reviewer
Demo to the product owners
Learn and teach team members
Take part in technical design discussions
Do we have a match?
As a Software Engineer you must meet most of the following criteria :
Excellent C programming language knowledge
Very good knowledge of internet and transport protocols (eg IP, TCP, UDP )
Very good knowledge of C++ programming language knowledge
Knowledge of Python and / or Rust programming language knowledge
Very good knowledge of Git, perf, GDB
Very good knowledge of software profiling, analysis and debugging techniques
Good knowledge of packet analyzers (eg wireshark, tcpdump )
Experience in working with Linux
Experience in low-level programming or Linux kernel development
Be a team player, have a problem-solving attitude, and willingness to learn continuously
Good knowledge of writing unit / functional / regression tests
Excellent Good communication skills, English (B2 level)
Beyond the criteria above, we would appreciate the nice-to-haves :
Experience with any private / public cloud infrastructure and services
Experience with small business and enterprise network routers and switches configuration
Experience in network security
Experience with networking solutions (especially SD-WAN, SDN, NFV)
Experience in data plane programming, especially using DPDK framework
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
The ability to change the project you work on