Share this Job

Please be advised that our Careers site will be unavailable from November 28 at 12am ET to November 29 12am ET for scheduled system maintenance.

Title:  Senior Software Engineer with Java and Kafka




Requisition ID: 150636

Join a purpose driven winning team, committed to results, in an inclusive and high-performing culture.


The Global Capital Markets Technology team that supports the Global Banking and Markets business is looking for a Senior Software Engineer to take on a challenging and exciting role.


The incumbent will be involved with working on a new GBM DP related projects as well as existing projects. The incumbent will also be included in a rotational support.

We are looking for creative, quick learning, self-starting, results and detail oriented, highly motivated individual with excellent problem-solving skills.


Key accountabilities

  • Works closely with Business Analysts, and team members to understand business requirements that drive the analysis and design of quality technical solutions. 
  • Undertake projects to onboard new data to the DP in both real-time and eod
  • Responsible for the overall maintenance of the data model for Equities
  • Provide guidance and expertise to consumers of the Equities data including technology and business users
  • Work to leverage data for analytics and data integration into applications
  • Contributes to the design of new applications and undertakes enhancements.
  • Makes recommendations towards the development of new code or reuse of existing code
  • Involved in the full software development life cycle and is responsible for designing, coding, testing, implementing and supporting application software that is delivered on time and within budget.
  • Show initiative to prepare and document artefacts that is important to the team
  • Testing, validation and promotion of data from dev, uat to production GBM DP platforms
  • Perform support of production trading applications to troubleshoot and quickly resolve any issues or questions.
  • Provide after hours support via an on-call pager on a rotational basis especially for application releases during a maintenance window or for other maintenance activities


Functional competencies

  • Deep knowledge of Kafka, ELK stack, and Nifi.
  • Hands on experience designing and developing integration solutions with Kafka and related technologies.
  • Provide expertise and hands on experience in transforming data and streaming processing in Kafka.
  • Provide expertise and hands on experience in publishing/producing and consuming messages to/from Kafka.
  • Provide expertise in working with the Kafka environment such as brokers, zookeepers, topics, partitions, etc.
  • Apply Kafka best practices in terms of ensuring high performance, scalability, maintenance, and stability.
  • Strong background working with FIX protocol
  • Experience with Linux/Unix environment and scripting.
  • Strong knowledge of relational (Oracle, MSSQL) and non-relational databases
  • Provide guidance for troubleshooting Kafka issues for development and support teams.
  • Develop monitoring strategies and solutions that use Kafka to support implementation.
  • Need to be able to multitask and work on multiple platforms and multiple projects concurrently.
  • Proficient with SCM, Build and CI/CD tools such as Git/Github/Bitbucket, Maven, Jenkins/Cloudbees
  • Excellent problem solving, analytical and critical thinking is expected
  • Ability to break down technical information and disseminating it to senior non-technical management
  • Strong understanding of development best practices, TDD, test automation, and code quality
  • Proficiency to develop robust, testable code


Nice to have Skills:

  • Angular and TypeScript, RxJS, HTML5, CSS, JavaScript, JQuery, Bootstrap
  • UI/ UX experience using responsive web design
  • Java 8, Spring Boot, Hibernate for designing, developing, integrating, securing RESTful web services using JSON
  • Micro services architecture and design patterns, including event based micro service deployments
  • Containers and container orchestration (Docker and Kubernetes)
  • Knowledge of capital markets and trade life cycle
  • Python.




Location(s):  Canada : Ontario : Toronto 

Scotiabank is a leading bank in the Americas. Guided by our purpose: "for every future", we help our customers, their families and their communities achieve success through a broad range of advice, products and services, including personal and commercial banking, wealth management and private banking, corporate and investment banking, and capital markets.  

At Scotiabank, we value the unique skills and experiences each individual brings to the Bank, and are committed to creating and maintaining an inclusive and accessible environment for everyone. If you require accommodation (including, but not limited to, an accessible interview site, alternate format documents, ASL Interpreter, or Assistive Technology) during the recruitment and selection process, please let our Recruitment team know. If you require technical assistance, please click here. Candidates must apply directly online to be considered for this role. We thank all applicants for their interest in a career at Scotiabank; however, only those candidates who are selected for an interview will be contacted.

Job Segment: Test Engineer, Testing, Software Engineer, Developer, Java, Engineering, Technology