Camlin is looking for software developers to join its market-leading design teams. The successful applicant can expect to join a growing development team. While being able to work closely with others he or she will also need to demonstrate the ability to work independently.
We currently have an opportunity for a highly motivated and talented software developer to enhance our dynamic software engineering team. The successful candidate will develop Linux application software for a communications gateway that exchanges information between various devices, with advanced monitoring and automation capabilities, and a backend server. This role would be perfect for an ambitious developer who relishes solving challenging problems and creating innovative, efficient and robust solutions that make a difference for our customers.
• Understand domain and product requirements in order to design, develop and test high quality applications for embedded systems
• Design and develop high quality code as well as unit and component tests within a continuous integration environment
• Co-ordinate with the Product Owner, team members and other stakeholders to meet business objectives
• Participate in project planning sessions and providing estimates
• Produce clear and concise technical specifications
• Configure and maintain development environments
• Participate in end to end system integration testing
• Investigate new technologies and continually improve technical knowledge and skills
• A degree in software engineering or equivalent
• At least 2 years’ experience in application development in C/C++
• Proven ability to develop applications in Linux userspace
• Practical knowledge of commonly used C++ design patterns and libraries
• Experience with one or more scripting languages e.g. python, bash
• Knowledge of source code revision control e.g. GIT
• Fluent in English, both written and verbal
• Practical experience with C++11 or higher
• Experience using unit and component test frameworks e.g. CppUnit, Cucumber
• Knowledge of industrial protocols e.g. DNP3
• Basic knowledge of relational databases e.g. SQLite
• Practical experience developing applications for embedded platforms
• Familiarity with Yocto project
• Familiarity with Behaviour deruven development
• Experience working in an Agile environment with continuous integration.
• Ability to communicate effectively with clients and colleagues.
• Quality focused with an understanding of advances in computer technology and how this affects the business environment
• Adaptable and able to pick up new techniques
• A positive "can do" enthusiastic attitude towards addressing the technical challenges facing Camlin and our clients
• Conscientious individual demonstrating attention to detail along with high levels of ownership and commitment
• Motivation to create high quality products and systems and learn new skills.