Previous Job
Previous
GECAN - Principle Engineer III
Ref No.: 18-20295
Location: Vancouver, British Columbia
Embedded Systems Performance Engineer
Vancouver, BC
18+ Months


Essential Responsibilities:
In this role, you will:
• Design, develop tools and framework to execute performance and reliability (P&R) system tests.
• Define the performance, reliability, and scalability test plans based on technical specifications and product requirements working with Product Management team
• Provide your analysis to identify performance or reliability issues in our products by troubleshooting issues and help developers find root cause.
• Configuring test environments, servers, monitoring performance tests and identifying application bottlenecks;
• Produce quality engineering documentation on our design and code
• Interact with internal and external multidisciplinary teams to coordinate and achieve project objectives in a prompt manner
• Follow-up KPIs and keep track on overall product performance and reliability metrics

Basic Qualifications:

• University or Master's Degree in course of completion in Engineering (Computer, Software, or Systems), Computer Science, Information Technology or equivalent related discipline
• 5+ years of experience in Embedded systems
• 3+ years of programming skills in C/C++ or Java
• 3+ year of experience with Linux OS and Shell scripting
• Strong writing and communication skills to describe test cases and test results
• Strong knowledge of software testing methodologies and software development fundamentals

Eligibility Requirements:
• Legal authorization to work in Canada is required.

• Any offer of employment is conditioned upon the successful completion of a background investigation

Desired Characteristics:
Technical Expertise:


• Experience in load testing applications building your own tools or using Jmeter, Client load runner or similar tools;
• Experienced running performance testing for network/embedded devices such as routers, firewalls using tools such as tcpreplay, Spirent, IXIA;
• Proficiency in programming using C/C++ or Java
• Scripting proficiency with shell, Perl and/or Python.
• Strong knowledge in Linux OS fundamentals and how memory, CPU, disk and Networking I/O are utilized
• Experience building/maintaining performance or system monitoring and reporting infrastructure using products such as Newrelic, Appdynamics, ElasticSearch;
• Good knowledge of docker-based microservice architecture and experience testing scalability for container-based application;
• Ability to do thorough analysis and provide insightful reports to keep track of P&R health of overall product;
• Experience of network protocols is desirable
• Experience with the following types of tools is desired:
o Continuous build tools such as Jenkins is desired
o Configuration management tools such as Gerrit, git or Github is desired.
o Server deployment/configuration tools such as Chef, Puppet or Ansible
o Test case management tools and issue tracking software (e.g. JIRA, Rally);

Business Acumen:

• Quick to translate testing results into business risks relevant to our customers
• Strong problem-solving abilities and capable of articulating specific technical topics or assignments
• Expert in breaking down problems and estimate time for development and testing tasks
• Ability to effectively prioritize tasks
• Proficient in communicating very technical concepts and issues to relevant businesses
• Ability to write clear benchmarking reports for marketing purpose.

Leadership:

• Demonstrates clarity of thinking to work through limited information and vague problem definitions
• Influences through others and by example; builds direct and "behind the scenes " support for ideas
• Proactively identifies and removes obstacles or barriers on behalf of the customer
• Shares knowledge, power, and credit, establishing trust, credibility, and goodwill

Personal Attributes:

• Keen attention to details and strong analytical, problem solving, troubleshooting, and prioritization skills
• Able to work under minimal supervision
• Excellent communication skills and the ability to interface well with the wider engineering department
• Dedication and commitment to problem resolution
• Ability to work on assigned tasks under tight time constraints
• Strong desire to experiment, use new tools and techniques
• Can be a creative problem solver