Understands that the success of a developer is to understand the core business processes of the business unit and business requirements as well as the architecture patterns and technology strategy (e.g., Transformation, SmartCore, DevOps). Conceive and write detailed software implementations/code while ensuring that their code/configurations adhere to the security, logging, error handling, and performance standards and non-functional requirements. Writes, configures, and integrates code to create the software that aligns with architecture patterns and technology strategy. Understands the implications of various components (including technology strategy & architecture) to the overall design of a program, system, or eco-system. Evaluates new technologies for fit with the program/system/eco-system and the associated upstream and downstream impacts on process, data, risk (e.g., security). Works toward the objective of defect free software. Ensures that systems functionally meet requirements, align with architecture and promote the development of common assets. Supports the resolution of production issues and problems. Makes recommendations to improve BMO processes & systems.
- Assesses impact of design decisions to the computer solution/product/service being developed (i.e. performance, schedule, budget, downstream component/system impact, quality, etc.) and recommends alternate/creative solutions for mitigation/optimization if required.
- Recommends and implements solutions based on analysis of issues and implications for the business.
- Identifies emerging issues and trends to inform decision-making.
- Leads and implements initiatives as required to deliver business objectives.
- Conducts independent analysis and assessment to resolve strategic issues.
- Builds effective relationships with internal/external stakeholders and ensures alignment.
- Monitors and tracks performance, and addresses any issues.
- Leads/conducts detailed code-reviews and provides feedback in a constructive manner.
- Decomposes business requirements and translates them into detailed design specifications and code.
- Interacts with key business & technology stakeholders to define, analyze, and deliver requirements that reflect the needs of both the business and end-customers.
- Assesses the costs and benefits for different solutions and recommend/decide on appropriate designs.
- Designs solutions, writes code, performs unit testing, develops appropriate artefacts / documentation, and facilitates final delivery.
- Supports production issues, includes independently completing root-cause analysis and diagnosis.
- Devises new algorithms and data structures for target environment and platform attributes in alignment with architectural patterns.
- Builds solutions that are supportable, scalable and achieve our aspiration of common assets.
- Recommends or automates approaches to streamline and integrate technological processes and/or systems to improve operational efficiency and effectiveness.
- Supports the management of specific project deliverables & outcomes.
- Identifies opportunities to strengthen the development capability, such as: sharing expertise to promote technical development, mentoring employees, building communities of practice and networks.
- Stays abreast of industry technical and business trends through participation in professional associations, practice communities & individual learning.
- Focus is primarily on business/group within BMO; may have broader, enterprise-wide focus.
- Provides specialized consulting, analytical and technical support.
- Exercises judgment to identify, diagnose, and solve problems within given rules.
- Works independently and regularly handles non-routine situations.
- Broader work or accountabilities may be assigned as needed.
We're here to help
- Typically between 5 - 7 years of relevant experience and/or certification in related field of study or an equivalent combination of education and experience.
- Advanced level of knowledge in domain.
- Knowledge of software development practices, concepts, and technology obtained through formal training and/or work experience.
- Knowledge of required programming languages and can code with little oversight.
- Knowledge of technical/business environment and processes.
- Understand functional aspects and technical behavior of the underlying operating system, development environment, and deployment practices.
- Have facility with and understanding of the ecosystem that code operates in.
- Deep knowledge and technical proficiency gained through extensive education and business experience.
- Verbal & written communication skills - In-depth.
- Collaboration & team skills - In-depth.
- Analytical and problem solving skills - In-depth.
- Influence skills - In-depth.
- Data driven decision making - In-depth.
At BMO we have a shared purpose; we put the customer at the centre of everything we do - helping people is in our DNA. For 200 years we have thought about the future-the future of our customers, our communities and our people. We help our customers and our communities by working together, innovating and pushing boundaries to bring them our very best every day. Together we're changing the way people think about a bank.
As a member of the BMO team you are valued, respected and heard, and you have more ways to grow and make an impact. We strive to help you make an impact from day one - for yourself and our customers. We'll support you with the tools and resources you need to reach new milestones, as you help our customers reach theirs. From in-depth training and coaching, to manager support and network-building opportunities, we'll help you gain valuable experience, and broaden your skillset.
To find out more visit us at https://bmocareers.com .
BMO is committed to an inclusive, equitable and accessible workplace. By learning from each other's differences, we gain strength through our people and our perspectives. Accommodations are available on request for candidates taking part in all aspects of the selection process. To request accommodation, please contact your recruiter.