Idirect Technologies Inc. Herndon , VA 20171
Posted 1 week ago
Overview
We are seeking a talented Software Engineer with a strong background in software design and development to work in a team that will implement exciting next generation features for iDirect satellite communication products. This engineer will collaborate with an outstanding team of engineers with the goal of delivering a premier IP-based satellite communication product making it possible to deliver voice, video and data connectivity anywhere in the world. Our diverse teams use an agile and test driven approach for development where thoughts and ideas are freely shared and collaboration is actively encouraged.
Responsibilities
EDUCATION:
Bachelor's or Master's Degree in Computer Science or a related engineering discipline is preferred.
POSITION SPECIFIC REQUIREMENTS
2+ years of experience designing and developing C++ software applications.
2+ years of experience programming in Linux.
Strong knowledge of Linux and Linux Kernel.
2+ years of experience in Linux virtual network driver development
2+ years of experience in using various Linux virtual interfaces and packet sockets with BPF
Strong knowledge of C, C++, OOD/OOP.
Knowledge of TCP/IP protocol suite (L2 through L7) and sockets programming.
DESIRED SKILLS:
A solid working knowledge of UML is strongly desirable.
Experience debugging at protocol level (Wireshark/tcpdump traces), application level (gdb) and systems level (kernel debugger) is strongly desired
BGP, MPLS, IGMP, VxLAN, VLAN knowlege is a strong plus.
DPDK and Open vSwitch knowlege is a strong plus.
Experience in satellite communications systems is desired.
Experience implementing software solutions at scale strongly desired
Working experience with tools such as GDB and Valgrind.
Git experience is strongly desired.
Scripting using shell scripting - Python is strongly desired.
Qualifications
Strong problem solving and communications skills.
Must be a self-motivated individual with technical leadership potential and proven success to proactively drive technical solutions in a structured, collaborative and fast paced development environment.
Good software design skills using proven and best practice design methodologies & related principles
Strong command of Object Oriented Design and Object Oriented Programming techniques.
Demonstrated experience in developing quality and maintainable software using test driven principles
Hands-on experience developing, designing and testing multi-threaded and multi-process applications on Linux, with strong working knowledge of C++.
Good understanding of networking, specifically the TCP/IP protocol suite
Strong documentation, writing and presentation skills.
Idirect Technologies Inc.