About The Position

The Faculty of Engineering strives to provide a learning environment that promotes excellence and innovation, ethical practice and responsibility towards society. Our workplace will challenge, energize and motivate you to be your very best while providing opportunities for career growth and professional development. Our work makes a world of difference in the lives of our students, who will become the next generation of leaders and change makers of our society. Our dynamic community is dedicated to building innovations that will not only help the advancement of technology, but solutions that will revolutionize the industry. We look forward to making the future TOGETHER! Position purpose: The Senior Software Developer, is responsible for the overall analysis, design, development and user experience of all Engineering outreach systems, as well as for other software development projects. Manages medium to major projects and may be required to supervise the work of others. Is focused on meeting user needs and improving the efficiency of the Faculty’s outreach operations processes through the Engineering outreach web systems and software solutions.

Requirements

  • University or College degree in Computer Science, Software Engineering or a related field or an equivalent combination of education and experience
  • Minimum 5 years of experience developing and implementing software applications or large scale web systems and applications
  • Advanced knowledge & experience with development using various technologies, libraries & programming languages such as Javascript, Angular, HTML5, CSS, PHP, Ruby, JSON, JQuery, Composer etc.
  • Advanced knowledge of systems architecture & operating systems principles. (LINUX, Debian, UBUNTU, APACHE, Docker, etc.)
  • Experience in configuration of cloud systems and infrastructure as code (AWS, Azure)
  • Experience working with various types APIs & other frameworks (i.e. Facebook, Twitter, LinkedIn, Mailgun, etc.)
  • Experience with stored procedures and the design of relational databases using MySQL, MSSQL, PostgreSQL
  • Knowledge of the principles, techniques, tools and best practices in JavaScript Web environments (i.e. git, node, npm, TypeScript)
  • Proven knowledge of enterprise architecture and system design, integration testing and best practices touching cloud technologies
  • Knowledge of project management concepts and methods, and experience in planning and managing cross-functional projects that are usually completed within 1 year
  • Experience in providing guidance, leadership and feedback to project teams and junior resources
  • Ability to communicate technical concepts to users
  • Advanced knowledge of server security and access principles and best practices
  • Analytical skills to diagnose, troubleshoot, debug and repair complex programming issues
  • Ability to proactively keep abreast of new and emerging technologies
  • Leadership and consensus building skills

Responsibilities

  • Provides professional expertise and leads the analysis of client, business and functional requirements for projects of medium and large scope and assists in determining technical, operational and economic feasibility.
  • Provides leadership in the creation of technical designs and system specifications or plans in order to translate requirements into technical specification documents.
  • Create complex, hardware-agnostic architecture for Engineering outreach systems and activities.
  • Leverages the latest cloud technologies and best practices to provide resilient and scalable systems across all Faculty of Engineering software development initiatives.
  • Develops and writes complex programs and oversees the work of others in developing effective program code, tests, debugs and performs integration tests to ensure correct functionality of software.
  • Takes a leadership role in the area of user trends, technical trends, and metrics to improve the Engineering systems.
  • Takes responsibility for any serious or unresolved issues through contacts with clients, manufacturers, other institutions, and IT personnel from another sector of the Faculty.
  • Leads usability studies with key stakeholders.
  • Analyzes these results to determine enhancements to the system’s design and user interfaces.
  • Presents these enhancements to the stakeholders for approval.
  • Produces documentation touching all aspects of the design and architecture processes.
  • Develops processes dictating the way systems should be constructed and deployed within the group.
  • Documents, as needed, workarounds to account for idiosyncrasies in the development and deployment of modules.
  • Produces a document library facilitating knowledge transfer between the other team members.
  • Coordinates release process for new and upgraded software in alignment with established procedures and processes.
  • Reviews and identifies the requirement to repair and maintains current systems and software to ensure they continue to perform in keeping with client expectations.
  • Provides guidance and leadership to project teams and establishes project steps, milestones and timetables including analyzing and estimating feasibility, costs, time and compatibility with hardware and other programs in order to ensure completion within the established timeframe and budget, while maximizing the use of the unit’s resources.
  • Ensures that all development is reviewed, approved and properly documented to ensure collaborative future development.

Benefits

  • The University of Ottawa offers a generous pay and benefits package that includes a competitive salary, a defined benefit pension plan, group insurance coverage and an employee and family assistance program.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service