The Health Informatics Software Development Specialist designs and implements new features and technologies, and delivers high quality, high performance code in an agile environment.
This position will lead the design, development, and maintenance of complex solutions with a focus on quality, performance, and resiliency.
Duties and Responsibilities
Technical Expertise :
Develop and routinely update all processes, standard operating procedures and documents for software management for the organization
Perform In-Process Review including Code Walkthroughs
Evaluate various solution options
Create TDD (Technical Design Documents)
Create, Review & Approve Design & Solutions
Map Solution from business viewpoint
Engage with client on requirements and application
Participate in requirements analysis, design and test plan creations and test result verification
Advise for production environment set up
Breaking down large scale projects into manageable chunks
Oversee the work being done by other software engineers working on the team, coordinating team activities with other teams and product groups, maintaining software architecture standards.
Consistently defines and applies technologies, standards and software engineering practices, mentoring other team members
Lead and Direct software engineering resources to ensure timely and quality delivery of services.
Responsible for mentoring junior talent as well as directing technical staff through technical challenges, tasks and projects.
Develop key product features within existing large-scale enterprise applications & new strategic initiatives.
Participate in the full SDLC involving design, implementation, testing, and launching.
Assist with the generation and analysis of business and functional requirements for proposed software solutions.
Participate in and sometimes lead architectural and database design discussions as they relate to product direction.
Create design specifications, documentation, and unit testing plans as defined by the Agile development process.
Generate data for project planning, including task breakdown and estimation of work for a project. Tracks status within the project as necessary.
Delegates tasks to project team members to balance work and increase team cross-training
Raises long-term architecture issues within project
Own the delivery of an entire piece of a system or application, and serve as a technical lead on small to midsize complex projects.
Build software solutions where the problem is not well defined. Design and define the interaction between the other component pieces.
Maintain and support software solutions post-production.
Implements and debugs some of the more involved / complex functionality.
Collaborate with the government and other stakeholders on e- initiatives by attending TWG meetings, and implementation of all activities designed by the government
Attend designated meetings in relation to cross cutting issues at different levels e.g. within organization (Team lead meetings, general staff meetings), outside (GON, various Partners meetings)
Maintain reports and documentation that are consistent with the task at hand and available to all concerned parties via emails or standard archiving options
Connects easily with supervisees and colleagues at all levels in a professional manner
Generate solutions or approaches to the most demanding problems within the team
Establish workable, prioritized, and highly effective problem-solving plans for each problem
Mode of Evaluation :
Biannual updated SOP for team
Reports of representation attended (meetings, TWGs)
Responses via email to supervisees, colleagues & management on key issues
Documentation of innovative new ideas or problem-solving initiative
Employee assessment of supervisor
Team Coordination and Supervision :
Provide appropriate mentoring and support to each supervisee addressing their individual assigned task (one on one physical visits, monthly meetings and documentation communication to each / all supervisees)
Give supervisees the information, technology and reference materials necessary to perform their jobs
Assign task to supervisees to build their capacity and demonstrate their skills in the task in : Site support : Each supervisee should have a copy of what sites have been assigned to them with a detailed SOWDevelopments : specific roles of each staff who be documented and communicate to the staff for each development activityDesk activities : Each supervisee should be made aware of the sites that they are responsible for reporting.
Feedback on reporting rates and quality of data entered should be shared and discussed with supervisee routinely
Conduct annual performance development plan and appraisal for each supervisee.
Recommend performance awards and / or merit increases when appropriate. As merit increases and award programs are implemented, supervisors will be required to provide evaluations that demonstrate the performance of eligible supervisees
Sign monthly timesheets and approve requests for time off. Your signature on a time record means you concur with the hours worked as recorded by your supervisee, including time taken off that may result in the supervisees inability to complete the required task
Identify and support supervisees to complete at least 1 capacity building activity within the year relevant to the project
Help supervisees address and resolve a wide variety of concerns and complaints. These typically involve job duties and job descriptions, performance standards, and relations with coworkers.
Mode of Evaluation :
Annual PDPs and appraisals
Quarterly documented feedback and coaching discussions
Quarterly score card of work plan / assigned task and achievements
Other duties as assigned.
Bachelor's Degree in Computer Science, Electrical Engineering, Computer Engineering or similar technical discipline; or, equivalent demonstrable experience.
Experience, Knowledge, and Skills
5 years systems development experience
Successful full life-cycle implementation of a least 2 major projects
Specialized knowledge :
Experience with software development methodology and release processes Excellent knowledge of software and application design and architecture
Familiarity with software configuration management tools, defect tracking tools, and peer review
Excellent knowledge of OS coding techniques, IP protocols, interfaces and hardware subsystems
Possess different industries as a technical architect, from planning the structure of a large scale records database to the redesigning of a shop's e-commerce facility, to name a few
Skills and Abilities :
Experience in software development and coding in various languages (C#, .NET, Java etc.)
Experience in developing web applications using at least one popular web framework
Possesses full working knowledge of technologies such as UNIX, Oracle, SQL Server and TCP / IP for example, as well as knowledge of one or more programming languages
Strong organizational, time management, computer and communication skills, leadership, coaching and team building skills to strengthen and cultivate relationship to help achieve organizational goal.
Ability to recognize the sensitivity to individual organizations needs and the impact on services of the introduction of IT solutions.
Ability to multi-task, Analytical skills, Ability to follow verbal or written instructions, Thinking analytically, Communication, Using effective verbal communication, Using effective written communication, Handling stress & emotions, Concentrating on tasks, Making decisions, Adjusting to change, Examining / observing details, Sitting for long periods at a time
Interpersonal / Individual Competencies : ability to work with other team members, flexibility, decisiveness and personal integrity
Fluency in English (speaking, reading, and writing).