Senior Software Engineer - Data Technologies

NDT Global
Municipality of Madrid, Spain
13 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate

Job location

Municipality of Madrid, Spain

Tech stack

Clean Code Principles
.NET
Agile Methodologies
Data analysis
Application Frameworks
Unit Testing
C Sharp (Programming Language)
Software Quality
Databases
Entity Framework
Extensible Application Markup Language
Windows Presentation Foundation
Microsoft SQL Server
Object-Oriented Software Development
Prism (Software)
Scrum
Software Architecture
Software Engineering
SQL Databases
GIT
Integration Tests
Information Technology
Front End Software Development
REST
Software Version Control
Data Binding
Microservices

Job description

NDT Global is the leading provider of ultra-high-tech diagnostic inspection solutions, advanced data analysis and integrity assessment services for ensuring the safety and longevity of energy-sector infrastructure assets. Recognized as the forerunner in ultrasonic inspection technologies comprising Pulse Echo, Pitch-and-Catch and Phased Array, as well as Acoustic Resonance (ART Scan) methodologies, the company also deploys a range of non-ultrasonic technologies, such as Inertial Measurement Units, with more under development. NDT Global strategically applies its inspection technologies to detect, diagnose and model various types of threat-circumferential or axial cracks, metal loss, geometry, mapping, and more-across diverse classes of assets. By providing predictive, decision-ready insights driven by the world's most accurate data, NDT Global enables the conditions for asset owners to optimize infrastructure health and drive operational efficiencies while reducing risk and minimizing their carbon footprint.

The goal of the Senior Engineer, Software is to set the software architecture, specify, design, implement and support the software for the planning, execution, and evaluation of pipeline inspections as well as application frameworks and base components. The role ensures that architectural, test driven, and clean code principles are followed by leading and reviewing Junior Developers' work. The role assumes responsibility for the software and source code

Design, develop, and maintain WPF applications using C# and the .NET framework.

Develops and designs innovative object-oriented, high-quality software and adapts existing software using C#.

Designs and specifies architecture of the developed software individually and in collaboration with other developers in the team and across teams.

Write clean, maintainable, and testable code with attention to performance and scalability.

Integrate applications with backend services, REST APIs, and databases.

Collaborate with QA engineers to ensure software quality and reliability.

Actively contributes to the self-organizing Scrum Team ensuring that architectural, test-driven, and clean code principles are followed by leading and reviewing Junior Developers' work.

takes ownership for the software.

Provides maintenance and user support for the developed software.

Requirements

A master's degree in computer science, Engineering, or related education is required (Bachelor's degree with equivalent experience may be considered).

A minimum of 6 years of experience in software development, including C# and .NET, is required.

A minimum of 2 years of experience with UI / Frontend Development and WPF is required.

XAML and data binding.

Familiarity with unit testing, integration testing, and version control (Git).

Must be proficient in spoken and written English

Experience with SCRUM / Agile development.

Experience with Prism, ReactiveUI, or similar WPF frameworks.

Knowledge of Entity Framework or other ORM tools.

Experience with SQL (MS SQL Server)

Health Insurance, pension Plan, Gym Flex, eyecare, 23 days Annual leave

Apply for this position