Manage multiple teams of professionals to accomplish established goals and conduct personnel duties for team (e.g. performance evaluations, hiring and disciplinary actions)
Provide technical leadership and development oversight to the wider team of Software Engineers/Analyst. Ensure application design adheres to the appropriate architectural and design patterns in the systems.
Provide strategic influence and exercise control over resources, budget management and planning while monitoring end results.
Serve as advisor or coach to mid-level/junior developers and analysts, helping build the overall engineering capabilities of the team.
Improve our engineering standards and process to make the team more capable and efficient. Collaborate effectively with a large global team of software engineers, business analysts, dev-ops and support staff to deliver software solutions for the business.
Utilize in-depth knowledge of concepts and procedures within own area and basic knowledge of other areas to resolve issues
Ensure essential procedures are followed and contribute to defining standards
Integrate in-depth knowledge of applications development with overall technology function to achieve established goals
Influence and negotiate with senior leaders across functions, as well as communicate with external parties as 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:
15+ years of relevant experience in designing and developing robust, scalable, and maintainable applications applying Object Oriented Design principles.
A minimum of 5 years of leadership experience, managing multiple development teams.
Working knowledge of industry practices and standards
Consistently demonstrates clear and concise written and verbal communication
Ability to evaluate design trade-offs and document choices effectively.
Extensive experience working with most if not all the technologies listed below:
Java Core with extensive hands-on experience with concurrent programming.
Spring Framework including Core, Integration, Batch, JDBC, Hibernate.
Distributed Caching frameworks such as Oracle Coherence, Redis or equivalent. Cloud computing technologies with practical experience working with containers, microservices and large datasets (Docker, Kubernetes).