HireFT
Browse JobsHow it worksPricingSuccess Stories
    Back to jobs
    AD

    Advantech Corp.

    Automation

    資深軟體工程師/副理 Senior Software Engineer/Assist. Manager - WEDA (WISE/內湖瑞光)

    Taipei_Neihu, TaiwanOn-SiteFull-time5+ yrs experiencePosted 3w ago
    All Advantech Corp. jobs

    Job description

    Role Overview 

    We are seeking a senior software engineer to own three connected layers of WEDA, Advantech's edge-to-cloud platform for managing industrial devices at scale: the cloud microservices, the device library that talks to Advantech hardware, and the edge SDK that connects field devices to our edge gateways. You will design, build, test and release across all three and keep them consistent, from a GPIO pin on an industrial PC to a public REST API in the cloud. You will work with product managers, solution architects, QA and application engineers, plan in Azure DevOps, and ship a release about once a quarter.

    Key Responsibilities

    A. Cloud Microservices:

    • Service Development: Design, build and run C#/.NET microservices on the ABP Framework for device management, telemetry, digital twins, device messaging, container deployment and AI-model management.
    • Architecture: Apply DDD, CQRS and event-driven patterns; keep message handlers idempotent and safe under retry.
    • Messaging Framework: Extend our in-house messaging framework on NATS, including header-based metadata, a middleware pipeline and JWT claims-based authorization.
    • Data Paths: Own data flows across NATS JetStream, PostgreSQL (EF Core), Apache IoTDB time-series storage and object storage, including resumable HTTP uploads for large files.
    • Public APIs: Publish REST APIs with consistent OpenAPI/Swagger documentation.

    B. Device Library (Hardware Abstraction):

    • Library Development: Develop the device library in C# and Python, shipped as NuGet and Python packages, exposing Advantech hardware to software: board info, onboard sensors (temperature, voltage, fan), GPIO/DIO, watchdog, thermal protection and DAQ modules.
    • Native Integration: Wrap native SDKs such as Advantech SUSI, EAPI and libgpiod through P/Invoke in C# and native bindings in Python, isolating native calls on a dedicated thread with timeouts so a driver fault cannot crash the host process.
    • Safe Degradation: Report hardware capabilities accurately and degrade safely on boards or VMs without a driver.
    • Release Management: Keep the C# and Python APIs consistent and own semantic versioning, migration guides and release notes, so a library upgrade never silently changes what a device reports to the cloud.

    C. Edge SDK:

    • SDK & Reference Apps: Build the .NET SDK and reference apps that system integrators use to connect Modbus devices, I/O modules, DAQ modules and sensors to our edge gateway.
    • Digital Twin Schemas: Turn SDK-declared device, sensor, transform, filter and command types into DTDL v3 schemas, and validate configuration and commands before they reach a device.
    • Data Reliability: Keep data reliable through outages with local buffering, historical data resync and chunked retransmission over NATS.
    • Container Packaging: Package edge apps as containers (Docker Compose) for Ubuntu, NVIDIA Jetson (arm64) and Windows targets.
    • New Integrations: Extend the SDK into new integration areas, such as robotics (ROS 2).

    D. Engineering Quality (Across All Three Areas):

    • Test-First Development: Write tests first and hold coverage at 90% for domain logic, 80% for services and 70% for infrastructure.
    • Hardware Regression: Run end-to-end regression on real hardware with QA before each release.
    • Functional Safety: Build safety in with fail-safe defaults, pre-condition checks and timeouts.
    • Code Review: Link every pull request to a work item, attach test results and get human review before merge.
    • Design Documentation: Write design documents and review product requirements with product managers and architects.
    • AI-Assisted Development: Use AI coding agents (such as Claude Code or Codex) within a reviewed team workflow.

    Qualifications & Technical Requirements

    • Education: Bachelor's or Master's degree in Computer Science, Electrical Engineering or a related field, or equivalent experience.
    • C#/.NET: 5+ years of professional C#/.NET development on .NET 8 or later, including async/await with cancellation, dependency injection and disciplined resource cleanup.
    • Python: Production Python 3 experience: packaging and distribution, type hints, pytest, and calling native C libraries from Python.
    • Microservices: Built and operated microservices in production: message-driven design (NATS, Kafka or RabbitMQ), REST APIs, PostgreSQL with EF Core, and containers on Kubernetes.
    • Hardware Interop: Hands-on hardware-facing work: native interop (P/Invoke, Python ctypes or CFFI, C or C++), Linux device access or industrial I/O, with attention to crash safety and timeouts.
    • Industrial Protocols: Practical use of at least one of Modbus RTU/TCP, OPC UA or MQTT.
    • SDK Design: Designed a library or SDK that other teams consume: API design, semantic versioning, backward compatibility, docs and samples.
    • Linux: Comfortable with Docker, systemd and debugging on remote devices over SSH.
    • Engineering Practice: Working knowledge of DDD or clean architecture, and a habit of unit and integration testing.
    • Communication: Clear written English for specs, pull-request descriptions and design reviews.

    Preferred Qualifications (Bonus)

    • Experience with the ABP Framework, NATS JetStream, or time-series databases such as Apache IoTDB or InfluxDB.
    • Hands-on experience with Advantech SUSI/EAPI or a similar board-support SDK, NVIDIA Jetson and arm64 cross-builds.
    • Digital-twin modelling with DTDL or Azure Digital Twins.
    • Go for edge tooling, or ROS 2 for robotics integration.
    • Familiarity with Helm, OpenTelemetry and Azure DevOps pipelines.
    • Experience shipping production code with AI coding agents inside a reviewed workflow.

    What You Will Gain

    • End-to-end ownership of an industrial IoT platform, from board-level drivers to cloud APIs.
    • Hands-on work with Advantech industrial PCs, I/O and DAQ hardware.
    • A clear growth path: within six months, lead a major SDK or platform feature end to end and become the go-to engineer for device library and SDK issues.
    • A modern engineering practice: test-first development, reviewed pull requests and AI-assisted coding.

    Job details are sourced from the employer's original posting.

    Open job posting
    AD

    About the company

    Advantech Corp.

    Founded in 1983, Advantech is a leader in providing trusted innovative embedded and automation products and solutions. Advantech offers comprehensive system integration, hardware, software, customer-centric design services, and global logistics support; all backed by industry-leading front and back office e-business solutions. Advantech has always been an innovator in the development and manufacture of high-quality, high-performance computing platforms. We cooperate closely with our partners to help provide complete solutions for a wide array of applications across a diverse range of industries. To realize our corporate vision of Enabling an Intelligent Planet, Advantech will continue collaborating and Partnering for Smart city & IoT Solutions.

    View all Advantech Corp. jobs
    Industry
    Automation
    Founded
    1983
    Open roles
    51

    Interested in this role?

    Apply with HireFT

    Free to start — no card required.

    Your fit

    How well do you match?

    Sign in to see how your résumé lines up with this role.