Staff Software Engineer - Orchestration, Research and Development
at Intersog
Vancouver, BC, Canada -
Start Date | Expiry Date | Salary | Posted On | Experience | Skills | Telecommute | Sponsor Visa |
---|---|---|---|---|---|---|---|
Immediate | 08 Feb, 2025 | Not Specified | 10 Nov, 2024 | 2 year(s) or above | Storage Systems,Sql,Distributed Systems,Jenkins,Kubernetes,Docker | No | No |
Required Visa Status:
Citizen | GC |
US Citizen | Student Visa |
H1B | CPT |
OPT | H4 Spouse of H1B |
GC Green Card |
Employment Type:
Full Time | Part Time |
Permanent | Independent - 1099 |
Contract – W2 | C2H Independent |
C2H W2 | Contract – 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