Job Description
Description
The ideal candidate thrives at the software-hardware boundary and enjoys solving real-world systems challenges involving device communication, reliability, and performance. Key Responsibilities:
- Architect a system to meet customer requirements based off the existing platform
- Develop management software to manage a fleet of PCs and hardware devices operating in a data-center-like environment
- Enable reliable orchestration, monitoring, and control of test systems at scale
- Design and implement PC-based applications and services (.NET/C#) to: Discover, configure, and manage USB devices
- Coordinate device operation across multiple PCs in rack environments
- Enable scaling from single-node to multi-rack deployments
- Develop frameworks for: Device orchestration and scheduling; Health monitoring and fault detection; Logging, telemetry, and diagnostics
- Implement and maintain communication layers using: USB interfaces; Network protocols (TCP/IP, sockets, REST, or similar)
- Develop reliable mechanisms for: Device enumeration and identification; Command/control messaging; Data acquisition and synchronization
- Troubleshoot issues across: Application software; Drivers and communication layers; Physical hardware and cabling
Requirements
- Bachelor’s degree in Computer Science, Electrical/Computer Engineering, or equivalent
Preferred:
- 4+ years of software development experience
- Strong proficiency in: C#/.NET application development; Windows-based PC application development
- Hands-on experience with: USB communication and/or networking
- Hardware communication (USB and/or networking)
- Debugging at the software-hardware interface
- Ability to design systems, not just write code
Are you interested in this position?
Apply by clicking on the “Apply Now” button below!
#GraphicDesignJobsOnline
#WebDesignRemoteJobs
#FreelanceGraphicDesigner
#WorkFromHomeDesignJobs
#OnlineWebDesignWork
#RemoteDesignOpportunities
#HireGraphicDesigners
#DigitalDesignCareers
#Dynamicbrandguru