Job Description
Ready to make your application Please do read through the description at least once before clicking on Apply.
JOB TITLE: Software Engineer
DEPARTMENT: Software – Technology
REPORTS TO: Software Manager
JOB HOLDER'S NAME:
1. PURPOSE OF JOB:
To provide hands-on software engineering expertise to support the Software team to bring new products to market whilst improving the design and performance of all existing products.
2. PRINCIPAL ACCOUNTABILITIES:
* To develop maintainable, well-structured software in line with coding standards
* To work collaboratively with colleagues in the Software team, Technology department, other departments and international offices
* To be actively involved in the formal product development process, from idea generation and screening, through concept and prototype development, to final design verification and validation
* To identify new areas of research and work closely with other product development team members to deliver product solutions that fulfil the needs of the customer
* To generate requirements documentation to ensure objectives and technical specifications are clearly defined
* To provide guidance and support during the seamless transition of new projects from development into mainstream production
* To always act in a professional manner to develop products which are aligned with the principles, strategy and goals of the business and expectations of the customer
3. CONTEXT
There is a requirement within the Technology team for a Software Engineer-end, to accelerate development of new and existing products.
4. KNOWLEDGE & EXPERIENCE
The Job Holder must have:
* Minimum 1-2 years’ C# software development experience in a commercial environment.
* A keen eye for detail and identifying problems at an early stage
* An innovative and self-motivated approach, good all-round engineering knowledge, a flexible attitude and be able to work in a multi-disciplinary team to meet time and budget deadlines The Job Holder may also have:
* 3 years’ commercial software development experience for industrial products
* Qualified to HND / Degree standard in software engineering or similar discipline
* Interested in building DevOps skills and experience (TeamCity or similar e.g. Azure Devops)
* Have experience of a variety of database technologies and platforms, such as MS SQL (T-SQL), PostgreSQL and SQLite
* Have experience of version control systems such as Git
* Good understanding of applying advanced domain driven design and development principles to industry best practices
* Awareness of standard design pattern (and anti-patterns)
* Ability to translate technical terminology xsngvjr and produce similar standard documentation for peers
* Experience of developing intranet-based browser applications
* Experience of developing GUI front ends (XAML/Blazor/Razor)
* Experience of implementing REST web services
* Have embedded software development experience using C++ or C (for Linux)
* Willingness to travel internationally on an occasional basis
* Able to demonstrate an ability to communicate effectively with customers and suppliers Skills Matrix, based on our tech stack (ordered by desirability) Primary Skill Including C# ASP.Net Core EF Core Blazor / Razor JSInterop WPF (legacy) SQL T-SQL PostgresSQL Message Queue MQTT RabbitMQ Data Analysis / Visualization Python Jupyter Notebook R/RStudio Plotly M2M (Industrial Control) OPCUA Modbus/TCP C++ Embedded Linux Microcontroller (Platform IO) SQLite DevOps TeamCity ESXI/Hypervisor Docker/PodMan