Title: Software Engineer Specialist
Requisition ID: 206450
We are committed to investing in our employees and helping you continue your career at ScotiaTech.
Purpose
The Software Engineer Specialist is responsible for providing technical analysis, design, development, implementation, and support of mission critical applications. The incumbent is responsible for current and future implementation projects within the group, introducing new technologies to meet business objectives and providing technical consultation, risk management, decision support and guidance to all medium to high complexity development projects. The role focuses mainly on backend development using Java / Spring Boot / RESTful API.
Accountabilities
- Build cost effective and efficient applications to meet business objectives by analyzing user requirements, providing technical specifications and design, developing/maintaining programs according to standards. The incumbent must ensure programs and applications developed meet the high availability, security, integrity, and reliability of the on-line transaction processing environment on time and on budget.
- Provide recommendations on departmental standards surrounding systems architecture, application development, systems integration, data modelling, testing, performance testing as well as, performing reviews and walkthroughs of all major project deliverables to ensure the quality and completeness of functionality.
- Provide production and user acceptance testing application support to complex technical problems on all assigned applications and technology that serve each business unit by analysing problems, implementing solutions, and developing new procedures surrounding support. The incumbent may be required to carry a beeper and be always available to provide support to the system during overnight processing runs.
- The incumbent is guided by Bank policy and receives broad direction from the Senior Manager/Director, and general direction from the Project Manager for the projects assigned. The incumbent is expected to function independently to identify opportunities for automation or efficiency, to introduce new technologies and to ensure that the department's objectives are met.
- Maintain a good understanding of the Division's business strategies, business policies, financial instruments, risk management and Backoffice processing.
- Participate in team meetings to provide status updates, execution, and development details.
- Provide application support after business hours and weekends as required.
- Show initiative in setting and meeting goals within an environment of managed change.
- Other duties as assigned.
Reporting Relationships
Primary Manager: |
Senior Manager |
Direct Reports: |
None |
Shared Reports (solid/dotted if applicable): |
|
Dimensions
- The incumbent must have a good understanding of business systems development and business analysis, with the ability to support key development as required.
- The incumbent must have excellent analytical, problem solving, and trouble shooting skills to develop and support systems to meet user requirements.
- The incumbent must be creative and flexible in identifying technical solutions to resolve business problems in a rapidly changing, demanding and complex business environment.
- Day to day decisions regarding approaches are handled independently by the incumbent.
- High degree of discretion and independent judgment to determine work priorities and approval of code delivery to UAT and Production.
- The incumbent must have a detailed understanding of the application systems he/she is responsible for
- The incumbent must have good interpersonal and communication skills to deliver proposals, provide user support and interact with team members and other departments.
- A broad understanding and knowledge of the banking products, services, market trends, business lending, computer services, planning and control tools and organized structure.
- The incumbent is guided by Bank policy and receives general direction from the Technical Lead, Manager, Project Manager for the projects assigned.
- The incumbent is expected to function independently to ensure that the assigned tasks and project objectives are met.
- The Developer works with the agile team to support the Product Owner in refining the product backlog and prioritizing business value. The incumbent is required to work independently/autonomously within the parameters agreed upon by the development team.
- The incumbent is empowered and expected to own their solution, ensuring full integration, and minimizing the impact of technical debt. Where issues are encountered, problem resolution is to be first discussed among the team. If required, proper escalation channels will be used.
- It is also expected that the incumbent will play a leadership role within the team, creating a positive work environment through coaching and encouragement in addition to providing their technical experience and advice with the rest of the team.
Education / Experience / Other Information
Education/Experience
- Bachelor’s degree in computer science, Engineering, or relevant experience.
Technical Skills
- 3+ years of recent experience in backend development (Specifically Java / Spring Boot).
- 3+ years of recent experience in Microservices and API development in an enterprise environment.
- Working experience of database and SQL (e.g., Postgres, MSSQL, Oracle).
- Working experience with Shell scripting in Unix/Linux environments.
- Working experience in an Agile environment, with experience and understanding of Test-Driven Development methodology.
- Experience working with real-time, high availability and low latency systems.
- Experience in Java multi-threaded applications.
- Working experience with containerized systems in public cloud (GKE/GCP, Azure, AWS)
- Java 17, Spring Boot framework, Junit frameworks, build tools and dependency management (Maven, Gradle).
- Technical hands-on working experience with automation and testing frameworks or tools such as Junit, Postman and Cucumber would be an asset.
- Experience working with authenticated, customer focused applications (i.e. OAuth2 preferred)
- Object Oriented and Functional Design.
- Familiar with software security tools like BlackDuck (vulnerabilities in JARs), Fortify (vulnerabilities/security issues in code), Webinspect (scan REST end points) and SonarQube (Junit coverage for code).
- Strong knowledge of programming languages: Java 17+, XML, YAML, JSON, SQL.
- Strong hands-on programming skills with popular developer utility tool suites like IntelliJ, JIRA/Bitbucket/Confluence, Git, Gradle/Maven.
Abilities
- Ability to work independently as well as part of the larger team.
- Proven ability to deliver quality results in a busy and dynamic business focused environment.
- Able to train, mentor and share knowledge in both individual and group settings.
- Excellent ability to prioritize tasks and manage time.
Attributes
- Excellent verbal and written communication skills
- Must have full comprehension of English, including excellent speaking and writing skills.
#LI-Hybrid
Location(s): Colombia : Bogota : Bogota
ScotiaTech is a business unit within ScotiaGBS, a Scotiabank Group company located in Bogota, Colombia. The ScotiaTech hub was created to support different technology systems and processes of the Bank. We offer an inclusive, positive work environment, and competitive benefits.
At ScotiaTech, we value the unique skills and experiences each individual brings and are committed to creating and maintaining an inclusive and accessible environment for everyone. Candidates must apply directly online to be considered for this role. We thank all applicants for their interest in a career at ScotiaTech; however, only those candidates who are selected for an interview will be contacted.
Note: All postings in me@Scotiabank will remain live for a minimum of 5 days.
Job Segment:
Test Engineer, Testing, Software Engineer, Developer, Java, Engineering, Technology