Citi Logo

Citi

Senior Java Developer

Posted Yesterday
Be an Early Applicant
Mississauga, ON
Senior level
Mississauga, ON
Senior level
Responsible for designing, developing, and maintaining robust software solutions while implementing best practices in engineering and collaborating with cross-functional teams.
The summary above was generated by AI

About the Role
We are looking for a highly skilled and hands-on Java Developer to drive modern engineering practices and technology transformation within our teams. You will play a critical role in designing, developing, and maintaining scalable, high-quality software solutions while ensuring best-in-class engineering standards, including trunk-based development, test automation, security, and modern ways of working.
This role requires deep expertise in system design, hands-on coding, and strong problem-solving skills to create resilient, high-performing, and secure applications.
Key Responsibilities

Software Development & System Design

  • Design, develop, and maintain robust, scalable, and high-performance applications.
  • Implement trunk-based development practices to enable continuous integration and rapid delivery.
  • Develop clean, maintainable, and testable code following SOLID principles and software design best practices.
  • Ensure high levels of unit test coverage, test-driven development (TDD), and behavior-driven development (BDD).
  • Actively contribute to hands-on coding, code reviews, and refactoring to maintain high engineering standards.
  • Participate with the development team to play L3 Production Support role on rotational basis during NAM hours to provide expertise to L2 Production Support Team when needed to answer queries and do RCA for production issues.

Engineering Excellence & Best Practices

  • Drive the adoption of modern engineering ways of working, including Agile, DevOps, and CI/CD.
  • Advocate for automated testing, infrastructure as code, and continuous monitoring to enhance software reliability.
  • Apply Behavior-Driven Development (BDD), Test-Driven Development (TDD), and unit testing to ensure code quality and functionality.
  • Conduct thorough code reviews, ensuring adherence to best practices in readability, performance, and security.
  • Implement and enforce secure coding practices, performing vulnerability assessments and ensuring compliance with security standards.
  • Collaborate effectively in agile environments, embracing DevOps principles and fostering a culture of continuous delivery and improvement.

Technical Leadership & Collaboration

  • Partner with architects, product owners, and cross-functional teams to design scalable and distributed systems.
  • Mentor junior engineers and foster a culture of engineering excellence and continuous learning.
  • Collaborate closely with DevOps teams to optimize deployments, observability, and production resilience.
  • Lead technical discussions, contribute to design documentation, and provide guidance on modern software architectures.
     

Skills and Qualifications

Must-Have Skills:

  • Strong hands-on 5-8 years of experience in coding using Java.
  • Deep expertise in system design and microservices architecture.
  • Experience with trunk-based development, feature flags, and progressive delivery strategies.
  • Proficiency in TDD, BDD, and automation-first mindset to ensure high test coverage and reliability.
  • Strong understanding of CI/CD pipelines, and DevOps practices.
  • Experience conducting code reviews, vulnerability assessments, and secure coding.
  • Familiarity with modern cloud-native technologies (AWS, Kubernetes, Docker).
  • Excellent problem-solving skills and ability to work in fast-paced, agile environments.
  • Hands on experience of building RESTful APIs using popular frameworks like Spring.
  • Proficiency with data structures, algorithms and SQL
  • Strong communication and collaboration skills.
     

Good-to-Have Skills:

  • Experience with event-driven architecture and distributed systems.
  • Knowledge of performance tuning, observability, and production monitoring.
  • Familiarity with Agile frameworks and modern ways of working in product development.
  • Experience of working in investment bank or financial services industry, experience of working in OTC derivatives is a plus.
  • Experience of using cloud services such as AWS and distributed systems such as Kafka, Kubernetes, S3, DynamoDB, MongoDB or any other NoSQL database would be a plus.
  • Experience with using Gen AI, using LLM, and API’s for enhancing capabilities using vector databases to derive intelligent embeddings would be a big plus.

Education:

  • Bachelor’s degree in computer science or engineering field involving software programming or systems engineering.

    ------------------------------------------------------

    Job Family Group:

    Technology

    ------------------------------------------------------

    Job Family:

    Applications Development

    ------------------------------------------------------

    Time Type:

    Full time

    ------------------------------------------------------

    Citi is an equal opportunity employer, and qualified candidates will receive consideration without regard to their race, color, religion, sex, sexual orientation, gender identity, national origin, disability, status as a protected veteran, or any other characteristic protected by law.

     

    If you are a person with a disability and need a reasonable accommodation to use our search tools and/or apply for a career opportunity review Accessibility at Citi.
    View Citi’s EEO Policy Statement and the Know Your Rights poster.

    Top Skills

    AWS
    Bdd
    Ci/Cd
    DevOps
    Docker
    Java
    Kubernetes
    Spring
    SQL
    Tdd

    Similar Jobs

    Yesterday
    Mississauga, ON, CAN
    Senior level
    Senior level
    Fintech • Financial Services
    The Sr. Java Developer is responsible for building scalable applications, utilizing web technologies, REST APIs, and Java/J2EE, while collaborating with the Technology Team in an Agile environment. The role requires extensive experience in full-stack development and knowledge of CI/CD processes.
    Top Skills: BitbucketCSSDockerGitHTMLJ2EeJavaJenkinsJIRAKubernetesMongoDBOracleReact JsRedisRest-ApisSonarqubeSpring Framework
    Senior level
    Fintech • Financial Services
    The role involves developing and implementing application systems, analyzing processes, providing user support, and ensuring compliance with policies while mentoring junior analysts.
    Top Skills: AmazonBitbucketDockerEcsJavaJenkinsKubernetesOpenshiftRestful ServicesSonar CubeSpringSpring BootTeamcity
    8 Days Ago
    Remote
    Toronto, ON, CAN
    Senior level
    Senior level
    Big Data • Cloud • Healthtech • Software • Big Data Analytics
    Join Veeva Systems as a Senior Software Engineer, using Java to develop solutions in a fast-paced, startup-like environment. Transform the life sciences industry with your expertise.
    Top Skills: JavaOpen-Source Technologies

    What you need to know about the Vancouver Tech Scene

    Raincouver, Vancity, The Big Smoke — Vancouver is known by many names, and in recent years, it has gained a reputation as a growing hub for both tech and sustainability. Renowned for its natural beauty, the city has become a magnet for professionals eager to create environmental solutions, and with an emphasis on clean technology, renewable energy and environmental innovation, it's attracted companies across various industries, all working toward a shared goal: advancing clean technology.

    Sign up now Access later

    Create Free Account

    Please log in or sign up to report this job.

    Create Free Account