Senior Software Engineer Distributed Systems

Vancouver, BC, Canada

Job Description

Working collaboratively, the team utilizes a range of technologies to deliver high-quality products at a fast pace. Leads by example within the team by producing extensible and maintainable. Optimizes, debugs, refactors, and reuses code to improve performance and maintainability, effectiveness, and return on investment (ROI). Applies metrics to drive the quality and stability of code, as well as appropriate coding patterns and best practices. Applies debugging tools and examines logs, telemetry, and other methods to verify assumptions through writing and developing code proactively before issues occur and reactively as issues occur for products. Conducts retrospective debugging of solutions to identify root causes of problems. Applies feedback to current and future iterations. Participates in code reviews to ensure coding standards are followed. Considers diagnosability, reliability, and maintainability when reviewing code, and understands when code is ready to be shared or delivered. Applies and screens for coding patterns and best practices in reviews, and provides feedback on code to drive adherence to best practices. Leads discussions for the architecture of products/solutions and creates proposals for architecture by testing design hypotheses and helping to refine code plans. Provides reactions, proposed solutions, and inputs to architects. Partially owns solutions for architecting of solutions, with minimal technical oversight. Develops design documents for designs or User Stories, and determines the technology that will be leveraged and how it will interact. Shares learnings and identified solutions from investigations with the team and owns for some design decisions. Assures system architecture meets security and compliance requirements and expectations. Independently creates a clear and articulated plan for testing and assuring quality of solutions, and defines success for outcomes of tests (e.g., unit tests). Identifies needs for a broad versus selected approach in testing mechanisms and makes informed decisions to implement the most effective tests. Drives efforts to add new tests, remove antiquated tests, and aggregate tests to improve the test suite. Improves recommendations to the team and augments test cases to ensure that solutions have good test coverage. Drives efforts to continually integrate automation features when planning for testing. Drives identification of dependencies and the development of design documents for a product, application, service or platform. Identifies other teams and technologies that will be leveraged, how they will interact, and when one's own system may provide support to others. Determines back-end dependencies associated with product, application, service, or platform functionality for the solution/product area. Understands up and downstream effects of solutions and work provided to ensure appropriate security and performance, drives reliability in the solutions, and optimizes dependency chains and retrieves across teams. Collaborates with appropriate stakeholders (e.g., project manager, technical lead) to align on user requirements for a scenario. Leverages a variety of feedback channels to incorporate insights into future designs or solution fixes. Ensures appropriate continuous feedback loops measuring customer value, usage patterns, and other actionable metrics of value are incorporated. Embody our culture and values Bachelor's Degree in Computer Science or related technical field AND 4+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python OR equivalent experience. 2+ years professional experience building large scale enterprise level distributed systems. Master's Degree in Computer Science or related technical field AND 6+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python OR Bachelor's Degree in Computer Science or related technical field AND 8+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python OR equivalent experience. azdat azuredata dataintegration Software Engineering IC4 - The typical base pay range for this role across Canada is CAD $114,400 - CAD $203,900 per year.

Skills Required

Beware of fraud agents! do not pay money to get a job

MNCJobz.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Related Jobs

Job Detail

  • Job Id
    JD3463234
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    $203,900 per year
  • Employment Status
    Permanent
  • Job Location
    Vancouver, BC, Canada
  • Education
    Not mentioned