Posted July 21st 2017

Position Description

Are you looking for a startup experience within the safety net of a large innovative institution? The faculty of engineering at the University of Ottawa is looking to build a new team of top notch developers tasked with developing software products that modernize the education space. Developers would work as an autonomous unit involved in all stages of development; from identifying customer needs, conceptualizing the architecture, designing the solution & deploying the final product. The faculty is looking for candidates who have extensive experience designing software solutions but are also keen on mentoring recent graduates looking to gain valuable industry experience by working with experienced industry experts. Candidates should love great design/UX and love building solutions with modern web technologies.

Full Job Description

Position Purpose:

The Lead Full-Stack Developer, is responsible for the overall analysis design, development, user experience of all engineering outreach systems of the Faculty of Engineering. 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.

Responsibilities

Specific Accountabilities:

1. Analysis: 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.

2. Design: Provides leadership in the creation of technical designs and system specifications or plans in order to translate requirements into technical specification documents. Create complex, multi-platform-compatible user interfaces for engineering outreach systems and activities. Leverage the latest web technologies and best practices to provide usable and consistent user interfaces across all outreach modules and initiatives at the Faculty of Engineering.

3. Development and Testing: 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.

4. Operational management: Takes a leadership role in the area of user trends, technical trends,and Web metrics to improve the Faculty?s engineering outreach presence. Take responsibility for any serious or unresolved issues through contacts with clients, manufacturers, other institutions,and IT personnel from another sector of the Faculty.

5. Usability Testing: Leads usability studies with key stakeholders such as authors, content matter experts, educators and students. Analyzes the results from the usability studies in order to provide more usable user interfaces and designs leading to a better user experience. Uses the results from the studies to influence and justify design decisions to various stakeholders.

6. Documentation and Process Development: Produces engineering outreach documentation touching all aspects of the design and architecture processes. Develops processes dictating the way web application 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.

7. Deployment and Maintenance: 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.

8. Project Management: 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 time frame 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.

9. Strategic Advice: Provides advice on emerging technologies and how these can be incorporated into the existing framework to improve the operations. Manages the delivery of outreach tools and technologies to meet the needs of the Faculty community.

10. Continuous Improvement: Provides recommendations to improve and enhance existing policies and standards and develops and implements procedures to ameliorate the efficiency and effectiveness of the services provided to users.

11. Supervision of others: Leads and mentors the outreach web application development team. Provides guidance in areas such as web design, usability, best practices and new web technologies/methodologies. Plans and organizes the day-to-day operational activities of the web and multimedia team. Works closely with the Manager in assessing the needs and direction of the team. Plans, organizes and manages various projects related to engineering outreach management systems at the Faculty of Engineering.

12. New technology assessment and advice: Anticipate and react to major technology changes to improve the overall web application experience both for the internal Faculty community, as well for worldwide users.

Qualifications

? University or College degree in Computer Science 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, CENTOS, UBUNTU, APACHE, etc)

? Experience in configuration of servers and systems. (SSH, shell, linux, apache, SSL)

? Experience working with RESTFUL 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 mobile app development (iOS, Android, Cordova, etc).

? Knowledge of the principles, techniques, tools and best practices in a Web environments (i.e GitHub, GitLab).

? Experience in web project management (agile & waterfall software development), understanding client needs and defining technical requirements.

? Proven knowledge of user interface and user experience design, usability testing and best practices touching web/mobile web 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 supervision, 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

Company Description

The Faculty of Engineering provides its graduates with top quality education in engineering and computer science, preparing them to practice their professions competently to meet the ever-changing needs of society, and to continue learning their discipline, allowing them to move into other related fields including business, law and medicine. 

Excellence and diversity in research are essential to our mission and build on our strong collaboration with industry and government research laboratories.