Job Details
The Applications Development Senior Programmer Analyst is an intermediate level position responsible for participation in the establishment and implementation of new or revised application systems and programs in coordination with the Technology team. The overall objective of this role is to contribute to applications systems analysis and programming activities.
Responsibilities:
Watch this video to learn more about Citi
- Design, develop, and maintain robust, scalable, and high-performance applications and services using Python.
- Write clean, efficient, and well-documented code following best practices and architectural standards.
- Implement and manage APIs, integrating with various internal and external systems.
- Contribute to all phases of the development lifecycle, including requirements gathering, design, coding, testing, deployment, and support.
- Participate in code reviews to ensure code quality, maintainability, and adherence to coding standards.
- Troubleshoot, debug, and upgrade existing systems to improve functionality and performance.
- Stay up-to-date with emerging technologies and industry trends, advocating for their adoption where appropriate.
- Mentor junior engineers and contribute to a culture of continuous learning and improvement.
Qualifications:
- 6+ years of professional experience in software development with a strong focus on Python.
- Proficiency in Python and its ecosystem, including popular frameworks (e.g., Django, Flask, FastAPI) and libraries.
- Solid understanding of object-oriented programming (OOP) principles, design patterns, and data structures.
- Experience with relational databases (e.g., PostgreSQL, MySQL) and NoSQL databases (e.g., MongoDB, Cassandra).
- Familiarity with cloud platforms (e.g., AWS, Azure, Google Cloud Platform) and containerization technologies (e.g., Docker, Kubernetes).
- Strong problem-solving skills and the ability to analyze complex technical challenges.
- Excellent communication and interpersonal skills, with the ability to work effectively in a collaborative team environment.
- Experience with testing frameworks (e.g., Pytest, unittest).
- Bachelor's or Master's degree in Computer Science, Engineering, or a related field.
Preferred Qualifications (Nice to Have):
- Experience in the financial services industry , understanding of the market Risk and capital markets.
- Experience with building and deploying microservices architectures.
- Experience with message queues (e.g., Kafka, RabbitMQ).
- Familiarity with CI/CD pipelines and DevOps practices.
Education:
- Bachelor’s degree/University degree or equivalent experience
This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required.
------------------------------------------------------
Job Family Group:
Technology------------------------------------------------------
Job Family:
Applications Development------------------------------------------------------
Time Type:
Full time------------------------------------------------------
Most Relevant Skills
Please see the requirements listed above.------------------------------------------------------
Other Relevant Skills
For complementary skills, please see above and/or contact the recruiter.------------------------------------------------------
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.
About Citi Working at Citi is far more than just a job. A career with us means joining a team of more than 200,000 dedicated people from around... Read more