Skip to main content

Careers

Senior Python Developer

Job Req ID 24804804 Location(s) Mississauga, Canada Job Type Hybrid Job Category Technology
Apply Now

The Applications Development Senior Manager is a senior management level position responsible for accomplishing results through the management of a team or department in an effort to establish and implement new or revised application systems and programs in coordination with the Technology team. The overall objective of this role is to drive applications systems analysis and programming activities.

Responsibilities:

  • Manage one or more Applications Development teams in an effort to accomplish established goals as well as conduct personnel duties for team (e.g. performance evaluations, hiring and disciplinary actions)
  • Utilize in-depth knowledge and skills across multiple Applications Development areas to provide technical oversight across systems and applications
  • Review and analyze proposed technical solutions for projects
  • Contribute to formulation of strategies for applications development and other functional areas
  • Develop comprehensive knowledge of how areas of business integrate to accomplish business goals
  • Provide evaluative judgment based on analysis of factual data in complicated and unique situations
  • Impact the Applications Development area through monitoring delivery of end results, participate in budget management, and handling day-to-day staff management issues, including resource management and allocation of work within the team/project
  • Ensure essential procedures are followed and contribute to defining standards negotiating with external parties when necessary
  • Appropriately assess risk when business decisions are made, demonstrating particular consideration for the firm's reputation and safeguarding Citigroup, its clients and assets, by driving compliance with applicable laws, rules and regulations, adhering to Policy, applying sound ethical judgment regarding personal behavior, conduct and business practices, and escalating, managing and reporting control issues with transparency, as well as effectively supervise the activity of others and create accountability with those who fail to maintain these standards.


Qualifications:

  • 6-10 years of relevant experience in the Financial Service industry
  • Experience as Applications Development Manager
  • Experience as senior level in an Applications Development role
  • Stakeholder and people management experience
  • Demonstrated leadership skills
  • Proven project management skills
  • Basic knowledge of industry practices and standards
  • Consistently demonstrates clear and concise written and verbal communication


Education:

  • Bachelor’s degree/University degree or equivalent experience
  • Master’s degree preferred


This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required.

JOB DESCRIPTION – Python Developer, Financial Risk Technology

Our team is responsible for supplying both backend and frontend services to Citi trading desks and enterprise users in the largest global financial markets and exchanges in New York, London, as well as other major financial hubs. Your key responsibilities as a new member of the team would include:

  • performing detailed requirement analysis and capture, working closely with business stakeholders (finance, risk managers) to scope and define solutions
  • communicating analysis outcomes and collaborate with other team members on timely delivery of expected changes, features or components of the IT system
  • developing and distributing comprehensive documentation for new features
  • efficiently liaising with global users, support and development teams on every stage of software development process, including user testing supervision and providing post-release assistance to business, development and support groups
  • proactive approach and ensuring that the software developed by the team remains compliant with best practices (TDD, high unit test coverage, CI)
  • focusing on sensitive data security and protection

Upon joining Citi as a new python developer, you will experience and benefit from:

  • Working in a leading investment banking environment with focus on a modern, global risk system software development
  • Developing and gaining an understanding of full software development lifecycle
  • Developing and gaining an understanding of the various Markets businesses, including traded products, markets, regions, processes and information flows
  • Advancing your working knowledge of market and credit risk measures, processes systems and regulatory requirements in investment banking

QUALIFICATIONS

Successful tackling of everyday challenges in inspiring and fast-paced environment of investment banking in your new role requires the following skills:

  • Primary technical skill: solid core Python 3.6+ programming of object-oriented applications
  • Demonstrable ability to leverage best coding practices: clean and readable code, automated testing, code reviews, continuous integration and delivery
  • Demonstrable experience in writing reusable, testable and efficient code with proper error and exception handling
  • Demonstrable experience in writing high quality unit and integration tests, strong debugging skills
  • Experience of test-driven development and of continuous integration platforms.
  • Hands-on experience in handling various data structure e.g. delimiter, JSON, XML etc.
  • Understanding of Agile software development approach and experience in using source control (preferably git)
  • Strong object-oriented design skills and experience in identifying and applying design patterns

The following skills are highly desirable for your new role and will be considered advantageous for your application:

  • Knowledge of python frameworks and libraries, including Pytest, Pandas, Flask, Kafka
  • Experience in integrating with HTTP/APIs end-points and processing responses
  • Experience with ORM libraries
  • Understanding of python packaging for release and deployment
  • Understanding of fundamental design principles driving a scalable application
  • Understanding of threading model of Python, and multi-processor architecture
  • Working knowledge of REST
  • Experience with financial concepts, ideally in market risk domain, e.g. exchange-traded and derivative products, pricing of financial instruments, risk measurement and attribution, quantitative finance models
  • Familiarity with front office and risk management functions in banking

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

Job Family Group:

Technology

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

Job Family:

Applications Development

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

Time Type:

Full time

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

Citi is an equal opportunity and affirmative action employer.

Qualified applicants will receive consideration without regard to their race, color, religion, sex, sexual orientation, gender identity, national origin, disability, or status as a protected veteran.

Citigroup Inc. and its subsidiaries ("Citi”) invite all qualified interested applicants to apply for career opportunities. 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 the "EEO is the Law" poster. View the EEO is the Law Supplement.

View the EEO Policy Statement.

View the Pay Transparency Posting

Apply Now

Saved Jobs

You have no saved jobs

Previously Viewed Jobs

You have no viewed jobs