Trending Jobs

Principal Software Engineer (Technical Lead)


Overview:

ST Engineering iDirect continues to fuel its engineering growth and seeks an innovative, creative software engineer who is ready for the challenges, responsibilities, and rewards that come with working in a high-energy, fast-paced environment. ST Engineering iDirect is dedicated to providing next-generation solutions for broadband IP networking via satellite networks. As the leading innovators in this new space, our diverse and talented team of Internet, satellite, and telecommunications professionals continues to break new ground and create significant opportunities for network operators, service providers and resellers, and corporate networking professionals.

We are seeking a talented Principal Software Engineer who will act as Technical Lead with a strong background in software design and development to work in a team that will implement next generation features for ST Engineering iDirect satellite communication products. This engineer will work 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 teams use Scrum for Agile software development, and as such we work in diverse teams where thoughts and ideas are shared and collaboration is actively encouraged. This gives team members the opportunity to work across products, getting to understand exactly how products operates, and how it fits within the larger iDirect communication solution.

Responsibilities:

A Principal Software Engineer at ST Engineering iDirect works within the engineering department in a SCRUM team using an Agile framework. The candidate will be responsible for participating in the specification, design, development, testing, and support features for a satellite communications system from concept through completion. He/she will be a highly motivated self-starter with strong written and oral communication skills and work well in a team environment. If you enjoy working in a fast-paced environment with the smartest team, and the very latest technology, then this is the job for you!

Analyze requirements and RFPs and come up with efficient software designs.
Participate in determining the future direction of the satellite system and related products in the areas of software architecture, infrastructure performance, test and reliability.
Design, Document, develop, test, and integrate software functionality for various components within a satellite system and related environments
Take a collaborative design and validation approach in working with a multi-functional Scrum team of software development and test engineers.
Troubleshoot and provide resolutions for technical issues encountered in the deployment of software solutions.
Provide technical guidance and oversight in software design, processes and development activities.
Provide training and mentorship to other engineers as required.
Assist other engineers in the team to plan and execute tasks as required.
Qualifications:

EDUCATION:

Bachelor’s or Master’s Degree in Computer Science or a related engineering discipline is preferred.

POSITION SPECIFIC REQUIREMENTS:

8+ years of experience designing and developing C++ software applications.
Strong knowledge of C, C++, OOD/OOP.
5+ years of experience programming in Linux.
2+ years of technical leadership expreince.
Knowledge of networking protocols such as TCP/IP, and sockets programming.
Experience developing unit tests, integration tests, and functional testing, including the development of related test automation integrated in a CI/CD pipeline desired.

PROFESSIONAL QUALITIES:

Strong problem solving and communications skills.
Must be a self-motivated individual with technical leadership potential and proven success in a structured development environment.
Possess the ability to proactively drive technical solutions in a collaborative 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.
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 and network protocols (TCP/IP)
Strong documentation and writing skills.
Strong technical leadership and mentoring of junior members of the team.

ADDITIONAL SKILLS:

A solid working knowledge of UML is strongly desirable.
Working experience with tools such as GDB and Valgrind.
Experience with version control systems (such as git) is strongly desired.
Scripting experience using shell scripting or Python desired.
Experience/ knowledge in satellite/ terrestrial communications systems is desired



Source link

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button