Location: Krakow, Poland
Salary Range: Competitive salary dependent upon experience
Business Area: Camlin Technologies
Role Reports To: Project Manager
Company Information
Camlin Technologies is the engineering, R&D, manufacturing and operations centre for the Camlin Group.
With headquarters in Lisburn, Northern Ireland, Camlin Technologies is an international company with a combination of engineering design, research and development and support locations worldwide. The company uses industry-leading R&D, state-of-the-art test facilities, in-house manufacturing and quality control. Drawing on a distinguished 30 year heritage of developing cutting-edge technology Camlin Technologies is focused keeping our customers' needs at the core of everything we do. Responsible for product development within the Camlin Group, Camlin Technologies works closely with Kelvatek, Camlin Rail and Camlin Power to develop the next generation of products and systems for the power industry.
From initial concepts; through the development and mass production, Camlin Technologies is an engineering powerhouse that specializes in a range of key specialist areas.
Camlin Technologies 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.
Role and Responsibilities:
Candidates for this position will become part of a dynamic team developing applications for embedded devices. Responsibilities include:
- Architect, design and develop high quality web applications from scratch (modularity , in-app routing, servers-side communication and data flow strategy).
- Design and develop code as well as unit and component tests within a continuous integration environment.
- Develop scripts to automate and streamline development activities
- Co-ordinate with Product Owner, team members and other stakeholders to meet business objectives.
- Participate in project planning sessions and provide estimates
- Understand the product and domain in order to write technical specifications.
- Stay up-to-date with what it’s relevant in the web technologies market
- Configure and maintain release and deployment environments
- Participate in manual end to end system QA testing
Essential Criteria:
- A degree in software engineering or equivalent
- At least 3 years’ experience in Linux application development in Javascript
- Experience with one or more scripting languages e.g. python
- Strong knowledge of JavaScript client side frameworks e.g. Angular.js, Ember.js, React or
- Strong knowledge of node.js and its web frameworks e.g. express.js, io.js, sails.js, meteor.js, mean.js
- Fluent in English, both written and verbal
Desired Criteria:
- Experience in utilizing C++ in building and designing node.js native extensions
- Experience using unit and component test frameworks e.g. TUT, Google Mock and Test, Robot Framework
- Experience in designing/creating test automation processes for both client and server side components
- Experience Designing UX/UI solutions for various screen sizes, platforms and different performance capabilities.
- Experience in designing multi-node software solutions(interfaces, messaging, data storing, caching)
- Experience developing javascript based graphical libraries e.g. d3.js
- Knowledge of interprocess communication mechanisms e.g. D-Bus, sockets
- Knowledge of HTML5 features
- Knowledge of networking and serial protocols e.g. TCP/IP, Modbus, CANbus, HDLC.
- Knowledge of web-app building and releasing process(grunt, gulp, webpack)
- Basic knowledge of relational databases e.g. SQLite
- Practical experience developing for embedded platforms
- Experience working in an Agile environment with continuous integration.
Personal Attributes
- A good team player capable of delivering excellent results under pressure and to strict deadlines
- 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 Technologies 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