Software Engineer

Engineering · Full-time · England, United Kingdom

Job description

Responsibilities & Tasks

  • Development of complete software solutions

  • Understanding of desktop control systems for large scale electromechanical assemblies

  • Development of new control systems and software products using Python

  • Maintenance and update of legacy Python and C++ systems

  • Strong working knowledge of the following languages:

    • Python
    • ReactJS (JavaScript or similar) for GUI development
    • C++ with STL and templates
    • Basic SQL for database work
  • Good understanding of the following environments:

    • Linux
    • TCP/IP networking, sockets and threads
    • Distributed processing systems
  • Experience of the following tools and utilities would be useful but not essential:

    • Data presentation with graphing tools
    • Containerisation using Docker, Flatpak, Snap, or similar
    • Atlassian tool-set
    • Git version control
    • Jenkins builder
  • Maintenance of hosting servers and related systems

  • Any other duties as required by the Lead Software Engineer / Engineering Manager

  • Work in a manner that protects the health, safety and welfare of yourself and others

  • Actively participate in Company improvement initiatives

  • Adhere to all Company policies and procedures

Required background

  • Qualified to Degree level BEng / BSc (Hons) or higher

  • Minimum of 1-2 year’s relevant experience in a similar position or industry

  • Familiar with MS Office applications, Word, Excel, Outlook, PowerPoint

Personal Attributes

  • Ability to work alone as well as an integrated part of a small team
  • Strong interpersonal and technical communication skills
  • Demonstrate flexibility and adaptability
  • Willing to self-develop and learn new skills
  • Ability to travel abroad to other CSS and customer sites as required
  • Potential for offshore working

Org chart