BMO Financial Group Senior Software Developer - (Java/ Linux / REST / SOAP/SQL / Payments) in Toronto, Ontario
YSC - 2 Sheppard Avenue East
Job Family Group:
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.
• Responsible for application packaging and integration ensuring applications are packaged and delivered according to documented user requirements, industry, the bank and TBE best practices.
• Collaborate and interact internally and externally with colleagues, customers, and vendors to ensure that the packaging and deployment of software applications are effective, functional, and reliable.
Business Delivery and Operational Effectiveness
• Leverage the existing tools, processes and best practices associated with application packaging such that documented user requirements are satisfied while adhering to BMO technical standards
• Work collaboratively with the Desktop Engineering team to ensure effective application packaging parameters are documented and delivered according to business & security requirements
• Work collaboratively with the Desktop Engineering team, subject matter experts and end users to ensure thorough testing is completed prior to production delivery
• Test and verify security controls in fixes, and new or upgraded products. Appropriate security stance must be maintained within all packages
• Maintain open communications with the Engineering and QA teams to ensure appropriate technical configurations are completed relative to user requirements and that all applicable standards are met
• Advising – This role is accountable for advising management on the appropriate technology solution to meet the needs of the clients.
• Coordinating - This role participates in meetings with the Engineering team, the Release Management team, project teams, subject matter experts and the users to discuss and resolve technical issues as they arise to ensure we are delivering the best possible solution.
· 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.
Technical requirements for this role :
· 7+ years programming experience in JEE, JPA, SOAP/REST Web Services, EJB
· 7+ years of working experience on Linux platform
· 7+ year experience of programming with Eclipse or RAD
· 7+ years of PL/SQL programming (stored procedures and functions)
· Current hands on experience in designing and developing applications using JMS, JAXB
· Application build and dependency management e.g. Maven, Gradle
· Test Driven Development writing test cases with Junit and mock testing libraries e.g. Mokito
· Capable to configure, setup, manage and troubleshoot applications running on UNIX/Linux OS
· Experience using messaging models Queues and Pub/Sub in an enterprise implementation
· Candidate should have analytical mindset to be able to review and contribute to users requirements, design and develop high efficient code for high-volume mission-critical systems
· It is a strong asset if candidate had exposure to IBM WebSphere
We’re here to help
At BMO we are driven by a shared Purpose: Boldly Grow the Good in business and life. It calls on us to create lasting, positive change for our customers, our communities and our people. By working together, innovating and pushing boundaries, we transform lives and businesses, and power economic growth around the world.
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://jobs.bmo.com/ca/en.
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.
BMO Financial Group Serving customers for 200 years and counting, BMO is a highly diversified financial services provider – the 8th largest bank, by assets, in North America. With total assets of $728 billion as of October 31, 2018, and a team of diverse and highly engaged employees, BMO provides a broad range of personal and commercial banking, wealth management and investment banking products and services to more than 12 million customers and conducts business through three operating groups: Personal and Commercial Banking, BMO Wealth Management and BMO Capital Markets.We serve Canadian clients through BMO Bank of Montreal®, our personal and commercial banking business, BMO Nesbitt Burns®*, one of Canada's leading wealth management firms, and BMO Capital Markets™, our North American investment and corporate banking division.In the United States, clients are served through BMO Harris Bank, a major U.S. Midwest personal and commercial bank, and BMO Private Bank, with wealth management offices across the United States, as well as BMO Capital Markets™, our North American investment and corporate banking division.We help our customers make money make sense by delivering the broadest range of financial services through a single point of contact. Our financial service professionals provide access to any services our customers require across the entire enterprise.