Description and Requirements
We are looking for a Software Analyst - Senior for our client in Toronto. This is a 10 month contract role, hybrid.
The Software Analyst will perform design, analysis, programming and integration activities in the development of software for train control systems.
Responsibilities:
- Understands the customer's needs and through life cycle concerns whatever the used means (e.g. advanced studies, simulations, mock-ups, models, prototypes, etc.).
- Contributes to the formalization of mission/function description, architectural & algorithms design and the refinement of functional and non-functional requirements.
- Designs, codes, debugs, write test procedures and tests software code, chairs design reviews.
- Reviews code, test procedures and test results
- Analyses and implements correction for defect report
- Perform engineering testing in the field and investigates problems in the field.
- Provides some inputs for cost estimates.
- Assists Functional manager in providing training, leadership and motivation to the staff
- Contributes in co-engineering activities with the Systems Engineering team in order to ensure system software consistency and the right refinement of software components and compliance with the software architecture.
Requirements:
- Senior level analysis skills, able to diagnose issues based on field logs and correlate events to failures
- Able to handle assignments within a medium to large scale software application
- Knowledgeable of the software development processes
- Able to quickly integrate with the team and work independently
- Knowledge of software development environment (Microsoft Visual Studio, desktop simulator, target simulator etc.)
- Senior level knowledge of railway signaling techniques including of SelTrac CBTC
- Experience in working within an team using Agile Methodologies
- Practical experience in using typical programs which are part of Microsoft Office Suite
- Practical experience with source control, IDE and requirements management tools (e.g Eclipse, Jira, Git, ClearCase, ClearQuest, Doors, etc)
- Senior level experience in development of software for embedded systems using programming languages such as C and C++
- Senior level experience in development of software in Java, C-Sharp, Assembly and Python programming languages will be considered an asset
- Senior level experience in using scripting languages such as Perl, Ruby etc.
- Senior level experience in Modelling and Simulation
- Able to program on various operating platforms (i.e. Windows, Linux, Unix etc.)