Software Engineer, Manulife Bank
Manulife
- Waterloo, ON
- Permanent
- Full-time
- Participate in ideation, and brainstorming sessions to devise creative and innovative digital solutions. We need and value fresh ideas!
- Design, code, unit test and integrate features and functionality
- Collaborate with product partners, software engineers, quality engineers and IT business analysts to uncover opportunities to deliver new business value through software
- Maintain and ensure high quality software by writing clean, maintainable, and well-documented code that adheres to industry practices and coding standards, with accountability for production reliability and usage
- Build best in class applications, APIs, and data solutions to drive business and technical outcomes
- Review current software framework to identify defects and opportunities to improve performance and stability
- Research technical strategies, third party tools, and current and new technologies to deal with emerging technical issues and improve development efficiency
- Apply disciplined coding practices to enable agility and delivery of high-quality code
- Promote agile principles and methodology
- Perform various investigative "Spikes" to mitigate technical uncertainty and risk
- Assist in the development of automated test harnesses as necessary to ensure delivery of high-quality code
- Update progress daily through the tracking tool (Jira) or Scrum/Kanban board
- Complete documentation as part of definition of done. e.g., deployment, maintenance, support and for business needs.
- Bachelor’s degree in Computer Science, Software Engineering, or a related field (or equivalent experience) preferred
- Experienced developer with at least 5 years of professional experience in software development
- Good verbal and written communication; effectively articulates technical vision, possibilities, and outcomes
- Key technologies include:
- React, Node.js, Javascript, SOA and Web Services, Java Springboot
- UI and API Test automation frameworks
- SQL for database
- CI/CD pipelines using Jenkins
- Git source control
- Jira for task management
- Familiarity with Scaled Agile and DevOps principles, test-driven development, continuous integration, and other approaches to accelerate the delivery of new features
- You have hands on experience with progressive architectural styles such as microservices
- Hands-on RDBMS experience (data modeling, analysis, programming, stored procedures)
- Good foundation in data structures, algorithms, and OO Design with rock-solid programming skills
- Collaborative demeanor to work with team members; able to coach, participate in code reviews, share skills and methods. Also efficiently communicate technical concepts to both technical and non-technical collaborators
- Constantly learns from both success and failure and is keen on experimenting with emerging technologies
- Good organizational and problem-solving abilities that enable you to manage through creative abrasion
- Agile team experience where responsibilities include the planning and delivery of user stories in an Agile Scrum environment preferred
- Banking Industry knowledge/experience preferred
- A competitive salary and benefits packages.
- A growth trajectory that extends upward and outward, encouraging you to follow your passions and learn new skills.
- A focus on growing your career path with us.
- Flexible work policies and strong work-life balance.
- Professional development and leadership opportunities.