← Browse all jobs
RI

Skill 2 SW engineer

Recutify Inc.
Ottawa, OntarioOn-siteMay 25
Apply Now →

About this role

Role: Skill 2 SW engineer Ottawa Work location: Ottawa. Background and Meet and Greet: MANDATORY Job Description: T1: Develop Java software components for the LCC subsystem, using containerized micro-services, network and data storage (SQL) functions, clustering features, cryptographic libraries, gRPC and REST API interfaces, common data formats (JSON, YAML, XML, Protobuf ). T2: Collaborate with senior developers, architects, and the engineering manager to implement components based on architectural requirements: draft designs, propose solutions, review in weekly design syncs, and finalize through code inspections. T3a: Define unit tests for components, support the team in BDD feature definition, and assist with automation goals. T3b: Collaborate with QA to develop BDD feature definitions (e.g., Gherkin files), translating acceptance criteria into executable scenarios. T4a: Apply common practices to ensure code quality and maintainability. T4b: Ensure thread safety, proper memory management (no leaks or undefined behavior), as well as code security. T4c: Document your code with inline comments or lightweight documentation for public interfaces. T5a: Provide clear effort estimates during planning and flag any deviations in daily scrums. T5b: Update status daily on the team board (e.g., Jira), and in standups, flag any deviation greater than 10% from the original estimate; if you exceed 20%, notify the engineering manager and suggest a corrective action. T6: Ensure designs facilitate troubleshooting of field issues. T7a: Troubleshoot and resolve issues uncovered during feature or design testing. T7b: When a QA feature or design test uncovers a defect, reproduce the issue locally, perform a brief root-cause analysis (noting steps and findings in the ticket), and categorize its impact. Key Responsibilities: T1: Develop Java software components for the LCC subsystem, using containerized micro-services, network and data storage (SQL) functions, clustering features, cryptographic libraries, gRPC and REST API interfaces, common data formats (JSON, YAML, XML, Protobuf ). T2: Collaborate with senior developers, architects, and the engineering manager to implement components based on architectural requirements: draft designs, propose solutions, review in weekly design syncs, and finalize through code inspections. T3a: Define unit tests for components, support the team in BDD feature definition, and assist with automation goals. T3b: Collaborate with QA to develop BDD feature definitions (e.g., Gherkin files), translating acceptance criteria into executable scenarios. T4a: Apply common practices to ensure code quality and maintainability. T4b: Ensure thread safety, proper memory management (no leaks or undefined behavior), as well as code security. T4c: Document your code with inline comments or lightweight documentation for public interfaces. T5a: Provide clear effort estimates during planning and flag any deviations in daily scrums. T5b: Update status daily on the team board (e.g., Jira), and in standups, flag any deviation greater than 10% from the original estimate; if you exceed 20%, notify the engineering manager and suggest a corrective action. T6: Ensure designs facilitate troubleshooting of field issues. T7a: Troubleshoot and resolve issues uncovered during feature or design testing. T7b: When a QA feature or design test uncovers a defect, reproduce the issue locally, perform a brief root-cause analysis (noting steps and findings in the ticket), and categorize its impact. What are the Mandatory skills and skill proficiencies required for this position? Java Development Strong proficiency in Java programming. Experience with Java-based microservices. Microservices Architecture Containerized microservices (e.g., Docker, Kubernetes). Clustering features and distributed systems. Networking & APIs gRPC and REST API development. Understanding of network protocols and service communication. Data Storage & Formats SQL databases and data storage mechanisms. Familiarity with data formats: JSON, YAML, XML, Protobuf. Security & Cryptography Use of cryptographic libraries. Code security best practices. Testing & QA Collaboration Unit testing and BDD (Behavior-Driven Development). Writing Gherkin scenarios and collaborating with QA teams. Code Quality & Performance Thread safety and memory management. Code maintainability and inline documentation.
Want to see how well you match this job?
Get AI-scored for free →