Job Description :
PRINCIPAL SOFTWARE ENGINEER (C++/LINUX)
Location: Framingham, Massachusetts
Duration: FULL TIME
As a Principal Software Engineer you will be responsible for designing, developing, integrating and maintaining our physical security and platform software across our entire product suite. You will be part of a skilled team working alongside other departments (Technical Support, Customer Service, Sales and Manufacturing This is a position for self-motivated creative thinkers who can deliver on a concept with minimal requirements.
Responsibilities:
Design, develop, integrate and maintain our Linux system software platforms and device specific software for our access control products and video management products
Migrate our products to new Linux releases
Develop new features and functionality for our access control and video management products
Introduce support for new access control devices to our access control management system

Qualifications:
Linux system expertise with 7 to 10 years of experience. Ubuntu/Debian preferred.
Experience with design/development on multi-threaded systems
Strong expertise in C/C++ development
Experience with python and shell scripting
Strong debugging skills
Must be self-motivated and have a proven ability to work well in a cross-functional team environment. Agile/Scrum experience is a plus.
Excellent verbal and written communication skills
Must be flexible and able to work in a fast paced environment
BS in EE/CS with expertise in Embedded Software development
Software Engineer
Required Qualifications
Very strong modern C++ knowledge (C++11and newer), including modern usage of templates, collections, smart pointers, concurrency, and Boost libraries. Candidate should be able to navigate and understand a significant existing C++ codebase.
A strong foundation in Linux. The successful candidate should have a good understanding of and experience with standard Linux debugging, monitoring, and performance measurement tools.
Strong Object-oriented design & programming skills. He/she will be expected to have the ability to design modular, concurrent software in response to guidance from senior engineering staff
Commitment to quality, including design and code reviews and unit testing.
Excellent verbal and written communication skills. Strong desire to work in an Agile Team environment.
Minimum of a BSCS or equivalent.
Highly Desirable Qualifications
Good understanding of web services programming, testing, and debugging, at both the client and server level.
Knowledge of digital video, including transport protocols like RTSP/RTCP/RTP and video codecs.
Good understanding and experience with timing-critical applications, such as real-time monitoring and control, video, voice, or similar.
Good understanding of a variety of network protocols, and experience in the use of protocol analyzers like Wireshark.
Experience implementing software to interface with external systems, such as sensors and audio/video devices via standard and vendor-proprietary APIs.
Personal Qualities
Self-motivated and have a proven ability to work well in a team environment
Able to learn quickly and willing to share knowledge
Flexible, enjoy working in a fast-paced environment
Responsibilities:
Design, develop, code, test, document, and support our software
Participate in design reviews as well as reviewing QA test plans
Work with Technical Support to help resolve Customer Issues



Looking forward for your response.
             

Similar Jobs you may be interested in ..