Full Stack Developer

Hudson
Chicago, United States of America
17 days ago

Role details

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

Job location

Chicago, United States of America

Tech stack

Microsoft Windows
API
Agile Methodologies
Apple Mac Systems
Business Logic
Systems Engineering
Unit Testing
Cloud Computing
Code Reuse
Continuous Integration
Software Debugging
Software Design Patterns
Linux
Distributed Systems
Middleware
Industry Standard Architecture
Node.js
Software Architecture
Software Engineering
TypeScript
Web Applications
Multithreading
Computer Network Technologies
Backend
GIT
Information Technology
Reactive Programming
GraphQL
Asynchronous Programming
REST
Software Version Control

Job description

We seek a Senior Full Stack Developer to design, code, test, debug, and document device communication middleware solutions for monitoring and controlling the devices we manufacture. Affect change in applications deployed in various environments, such as cross-platform desktop (Windows, macOS, Linux), mobile, browser-based, cloud, and embedded. Advance the evolution of our software architecture to improve code reuse in the above environments, write high performance code where milliseconds matter, and increase maintainability. You'll also collaborate with other developers to enhance, modify and maintain the numerous applications consuming the device communication middleware, as well as with business partners to define requirements for application behaviors from user interfaces to embedded device behavior., * Design and implement platform-independent device communication middleware solutions that control and manage state-of-the-art products and networking technologies.

  • Develop software using agile development methodologies on high-performing, cross functional development teams
  • Collaborates with marketing, test and system engineering to define software use cases and requirements that drive end user value
  • Implement device communication business logic in Node.js and TypeScript
  • Expose functionality to consuming applications via GraphQL and/or REST APIs
  • Research, model and standardize device interaction capabilities across our broad product ecosystem, providing device-agnostic interfaces for client applications

Requirements

  • Bachelor's degree in Computer Science or related field
  • Minimum of 5 years of experience
  • Proven experience as Node.js backend developer with a strong focus on TypeScript
  • Proficiency in designing and documenting Web-based APIs for asynchronous systems
  • Demonstrates problem-solving skills and ability to troubleshoot complex issues.
  • Understanding of operating system fundamentals, asynchronous programming, multi-threading, and reactive programming.
  • Understanding of industry standard software development practices, such as:
  • Software Design Patterns and Principles, such as separation of concerns, cohesion vs coupling, SOLID
  • Continuous integration, testing, and deployment
  • Unit and Integration Testing
  • Experience with software version control systems, preferably with git.
  • Software development experience with the following technologies are strongly preferred:
  • Authoring and consuming RESTful and/or GraphQL APIs
  • Distributed Systems

Apply for this position