Staff Software Engineer - Orchestration, Research and Development

at  Intersog

Vancouver, BC, Canada -

Start DateExpiry DateSalaryPosted OnExperienceSkillsTelecommuteSponsor Visa
Immediate08 Feb, 2025Not Specified10 Nov, 20242 year(s) or aboveStorage Systems,Sql,Distributed Systems,Jenkins,Kubernetes,DockerNoNo
Add to Wishlist Apply All Jobs
Required Visa Status:
CitizenGC
US CitizenStudent Visa
H1BCPT
OPTH4 Spouse of H1B
GC Green Card
Employment Type:
Full TimePart Time
PermanentIndependent - 1099
Contract – W2C2H Independent
C2H W2Contract – Corp 2 Corp
Contract to Hire – Corp 2 Corp

Description:

Intersog® is a Chicago-based provider of ROI-driven custom web and mobile development specializing in the delivery of full-service, end-to-end solutions, and project resources to Fortune 500 companies, SMEs, and startups. We help our clients attack their ambitious business goals, solve skills shortage issues, and become innovative by building Dedicated Software Development Teams in Mexico, Canada, the U.S.A., and Ukraine and providing on-demand IT project resources to complete required skills on their in-house teams.
Our client wants to transform experiments into executable instructions for Workcells and devices, so we seek a dynamic Staff Software Engineer to join our team. You will lead a talented team of engineers while collaborating with cross-functional departments to deliver high-quality solutions that meet our clients’ needs. We want to hear from you if you’re passionate about technology, leadership, and creating user-centric applications!

REQUIREMENTS:

  • 7+ Java based backend services
  • 5+ Microarchitecture principles, Kubernetes and Docker based services
  • 5+ Messaging frameworks, SQL and non-SQL data storage systems, data layers, and efficient data query techniques
  • 3+ Distributed systems, specifically Akka actors
  • 3+ CI/CD environments, using tools (Jenkins, Argo Workflows, Github actions)
  • 2+ Constraint Solvers for Scheduling problems(i.e. IBM CPLEX or OR-Tools)
  • 2+ Working with 3rd party API’s. Adept at RESTFUL concepts. Good understanding of the HTTP/S protocol and standard conventions. Experience with api documentation tools (Swagger)

Responsibilities:

  • Java Backend Service Development: Design, develop, and maintain scalable and resilient Java-based Kubernetes services using the Spring Boot framework and its code generation capabilities. Leverage Spring’s robust features, such as dependency injection, data access, and web development, to build efficient and maintainable microservices.
  • Microservices Architecture: Design and implement new microservices, and enhance existing ones, adhering to best practices of microservices architecture. This entails utilizing message-based communication systems and effectively leveraging SDK clients or APIs for inter-service interaction. Additionally, employ efficient data querying techniques to retrieve information from diverse data systems and ensure transactional data integrity to ensure no instruction is lost.
  • Akka Actors and Distributed Systems: Design, Build, and test execution logic partitioned by akka actors. Develop new distributed systems designs as needed to support the volume of experiment requests in a laboratory.
  • Constraint Solvers: The core capability of the Orchestration Layer is solving a scheduling problem. The scheduling problem is created by an input experiment and the available inventory in a target laboratory. Choose the best algorithms and frameworks for the experiment request volume and the quantity of workcells and devices present in our client laboratories.
  • Execution Engine: Computing the execution plan for an input experiment is the first half of the Orchestration Layer. The second half is managing the execution of said plan. Design, Build, and test the execution engine in the Orchestration Layer.
  • Workcell Software Expertise: Gain a deep knowledge of the execution models and access patterns for Workcell Software Systems. The Orchestration Layer does not communicate directly with Workcell Software Systems but must generate execution plans and execute them in accordance with the current capabilities of Workcell Software Systems.
  • Mentoring and Vision: As a Lead Engineer the Software Engineer, Orchestration will Set the technical direction, mentor the software engineers, and ensure the code quality for the Orchestration Layer team. Also provide recommendations about team construction, interfaces with adjacent teams, and staffing to the Director of Software Engineering.


REQUIREMENT SUMMARY

Min:2.0Max:7.0 year(s)

Computer Software/Engineering

IT Software - Application Programming / Maintenance

Software Engineering

Graduate

Proficient

1

Vancouver, BC, Canada