Software Engineer
Newcastle upon Tyne, Tyne & Wear
Competitive remuneration package offered.
Salary negotiable and dependent on experience.
An opportunity to join an exciting organisation as a Software Engineer.
The Research and Development function is a multi-disciplined team that sits within the wider Engineering function. The team’s primary responsibility is to track the latest technology and engineering advancements and create novel solutions to previously unsolved complex problems faced by our customers.
The Research and Development team are involved in concept design, innovative product development and the support of delivery of the complete manufacturing and technical data packs associated with our contracts. The team also provides hands-on support for demonstrations, installation, testing and commissioning of new products, both internally and at our customers’ sites, all over the world.
Reporting to the Head of R&D, the primary role is developing software for our current and future products. This will include gathering and documenting user requirements, defining system functionality, developing, and testing code (integral to PEL’s products) in a number of different languages, as well as assisting during the commissioning / testing of existing and future products.
Main Duties & Responsibilities:
Writing efficient, well-designed, testable, and maintainable code.
Integrating software components into a fully functional software system.
Troubleshooting, debugging, and upgrading existing systems.
Maintaining a knowledge of current software development trends to assist in the development of current and future products and internal product design processes.
Developing flowcharts / state diagrams and other documentation to clarify / identify requirements and solutions.
Verification and validation of fellow developers designs.
Hosting and participating in design reviews providing technical input throughput the development process.
Coaching team members to improve capabilities and develop their software knowledge/expertise.
Generating operating and troubleshooting instructions suitable for integration into customer manuals.
Contribute to the selection and specification of the electronics hardware that software will be installed onto and interface to.
Communicating professionally with fellow staff, directors, and clients.
Maintain strict deadlines and prioritise workflow accordingly.
Other related duties as assigned.
Qualifications, Skills and Experience:
A degree in Software Engineering, Computer Science, Physics or Maths with a grade of at least a 2:1 or an equivalent qualification and experience.
Proven experience in relevant industry.
Experience with Linux and developing real-time software in C/C++, Java or Python is essential.
Experience of robotics, machine control systems and automation is essential.
A basic understanding of electronics and the ability to read electrical schematics is essential.
Experience with ROS, machine learning and OpenCV is advantageous.
Knowledge of CODESYS or similar PLC software is beneficial.
Experience of testing or reviewing software written by others is desirable.
Experience working in a multi-disciplined engineering team.
Able to think laterally when problem solving.
Ability to investigate and interpret data, issues, and situations, to make sound decisions in high-stress situations.
Appetite for learning new technologies and applications.
Ability to communicate complex procedures to colleagues.
Self-motivating, proactive and results driven approach.
Ability to work to deadlines whilst maintaining high quality.
Excellent knowledge of MS office applications including Excel and Word.
Competitive remuneration package offered.
Salary negotiable and dependent on experience.
If you feel that you have the necessary skills and experience, we would like to hear from you