As a software specialist, the successful candidate will act as a software developer/engineer, designing new and supporting/maintaining existing products.
Key Responsibilities:
· Create, review, revise and maintain software design documentation
· Develop and implement alternative design approaches
· Identify product/service innovations and develop, quote, and implement solutions to meet
special customer requirements and requests
· Maintain and support existing software products
· Conduct research and studies for specific projects as requested
· Provide professional feedback/comments at design and code reviews
· Contribute to the suit of unit and/or system test beds
Requirements:
· Bachelor’s degree in computer science or computer engineering
· 3+ years’ software engineering and software design experience, with the ability to formally
document requirements, designs, and implementations
· 3+ years’ professional experience with C# and C++ programming using .NET framework
· Experienced with developing communications software using proprietary customer or industry
standard protocols
· 3+ years of network programming, TCP/UDP, sockets, FTP, Web Service and SNMP
· Good understanding of OOD methodologies, design patterns
· Fluent in at least one database design and development (MySQL, SQLite, Oracle, Sybase)
· Image processing, pattern recognition with Matlab/OpenCV experience is an asset
· Must have excellent verbal and written communications skills
· Experience working in Scrum/Agile and waterfall teams
· Hands on approach (like to be in labs interacting with hardware)
· Demonstrable teamwork skills
· Strong motivation for excellence