Senior Software Engineer

  • Company:
    Winters Technical Staffing
  • Location:
  • Salary:
    negotiable / month
  • Job type:
  • Posted:
    13 hours ago
  • Category:
    IT & Software

Oakville, OntarioJob TypePermanentJob ID16844Salary$80,000.00Job DescriptionWe are currently hiring a Senior Software Engineer for Oakville, Ontario.Purpose of RoleThe Senior Software Engineer is an integral part of the Professional Services team and acts as the technical lead for various projects creating solutions that meet customer needs relating to architecture, design, implementation, testing and maintenance.The incumbent is responsible for designing and implementing fully functioning, debugged code with required documentation that meets specification requirements.This position reports to the Engineering ManagerMain responsibilitiesParticipate in preparation of architectural changes, solution design and technical specificationsDevelop code, install, test, debug and document applications using appropriate processes, tools and standardsCreate and review technical design documents related to project and understand how the design will be used in the code development processProvide application development, support and maintain the standards from both a coding and visual perspective to ensure consistencyPerform troubleshooting activities, program modifications and enhancements to fix bugs/defects and add features as requiredMaintain and modify existing applications; utilize current technology/tools to enhance the effectiveness of deliverables and serviceProvide estimates on the effort/duration for activities/tasks required to perform design and coding improving accuracy over timeDesign and build product deliverables according to specifications, escalates technical design or specification issues to Director, Professional Services and work within a given timeframe to complete codingTroubleshoot functional and performance issues in development and test environmentsPerform maintenance programming for existing versionsDevelop well documented and robust code to ensure efficient maintenance and code reuseProvide production/acceptance support by offering resolutions to problemsEnsure the functionality, performance, scalability, reliability, realistic implementation schedules and system architecture for each project Review code changes that other developers made on parts of a product source codeCommunicate risks and issues to the Director in a timely mannerAssist with escalated customer support investigationsAnticipate obstacles and execute proactive approaches to issuesEnsure work progress to schedule and keep Director informed of project progressSubmit bi-weekly written status reports, which outline: the overall progress summary for deliverables, deliverables achieved, deliverables remaining, progress and expected delivery date for each and issues and concerns affecting specific deliverables and the engagement scheduleProvide expertise in developing architecture and standards for applications as well as support and development for existing applicationsEnsure that all software versions and associated documentation are stored/archived for future referenceDevelop a detailed knowledge of application systems and create/update documentation as required for future system development – this will include but not be limited to: functional specifications, system architecture design, database design, and complex modulesProvide a report on gaps and recommendations for improvement of applicationsProvide recommendations for improvements in the overall development process, productivity, effectiveness and operational efficiency of the teamParticipate in walkthrough reviews of specifications, code and test plansDevelop, troubleshoot, enhance and document components developed by self and others as per the requirements and detailed designDrive technical platform evolution and improvementsEnsure all project artifacts (e.g. specifications, designs, test descriptions, implementations, tests, records, reports) are stored appropriately and are complete and up to dateStay current with trends, techniques, technology relevant to MCI’s businessRequirementsExperience/ BackgroundBachelor’s degree in computer science, computer programming or related curriculum.Good problem solver through design and creation of codeTeam player, good verbal communicationProven ability to work both independently and part of a teamAbility to quickly adapt to new technologies and environments and to work with change and ambiguitySoftware Development:- Java (at least 5 years)- Java JNI experience is a plus-Angular 9 preferably (must have 3 years of Angular 2+, angular.js does not count)- Redux, NGRX, RXJS- Experience in unit / regression testing (Jasmine, Karma, protractor)- NoSQL experience is a plus- Electron experience is a plus- NodeJS experience is a plusOperating Systems:- Windows 10- Windows Server- Linux Server (RHEL, CentOS, or Oracle Linux)Database:- Oracle or SQLServerVirtualization:- any Oracle or VMware virtualizationWeb & Application Servers:- JBoss/Wildfly- Apache TomcatSoftware Engineering methodology:- Agile/ScrumAdditional working requirementsMust be successful in qualifying for and maintaining any security clearance requirementsIf you have the skills and experience that we are looking for to be successful in this role please submit your resume to or fax to 905-231-3860We are an equal opportunity employer