Previous Job
Previous
Senior Application Developer - Investments
Ref No.: 17-00021
Location: New York, New York
The Senior Application Developer - Investments will work directly on projects that improve the experience, efficiency and performance of our clients investment team. Reporting directly to the Front-Office Sr. Architect, the successful candidate will be comfortable working directly with traders, portfolio managers and risk managers to deliver front-to-back solutions.
He or she will manage/lead a small team of in-house and outsource developers, taking responsibility for their productivity and code quality; as well as personally making hands-on contributions to the project portfolio.
Additionally, he or she is expected to work collaboratively with others in IT to realize the full life cycle of system development projects: from requirements gathering through white-boarding, application design, system design, data modeling, coding, delivery, support and enhancements.

DETAILED DESCRIPTION:
The successful candidate will be a "full stack” developer with strong experience writing n-tier front- and back-office applications for financial services companies, such as asset managers, hedge funds and/or broker/dealers. Candidates with strong technology qualifications outside of financial services will be considered, but we have a strong bias toward hiring someone with a proven track record in finance. Working with all members of the virtual team across Investments and IT, he or she will work to translate user requirements into working implementations, either as a hands-on contributor or at times leading a small team of junior developers.

This role must lead by example and work collaboratively to:
  • Provide direction to shape the future of our application architecture
  • Raise the bar on our development capabilities and processes
  • Organize with end users, business analysts, and other architects and developers following a scrum methodology
  • Synthesize requirements gathered from multiple teams inside and outside IT and suggest creative solutions – where appropriate guiding us to "do it the right way” and translate them into software
  • Develop and maintain new and existing web-based Python and some legacy C# applications for use by our Investment team.
  • Tune code for efficiency
  • Make positive steps toward standardizing the development processes including technology selection, deployment steps, code reviews and IT tools.
Our applications are primarily browser-based, developed using Python/Django, ReactJS, C# and Java, though Java and C# are now considered legacy technologies for us. Additionally SQLServer, Hadoop/Spark, Kafka/Confluent, SAP Business Objects, Tableau, Interaction CRM, and a variety of third party APIs and data sources come into play.
Some of the projects/systems that this role will be working may include, but are not limited to:
  • Manager Selection System
  • Research and Trading Systems
  • Quant models
Must have
  • 10+ years hands-on object oriented development in a financial services context (Python, C#, Java and/or C++). Strong Python is a must.
  • Experience designing and building responsive, web-based apps using modern frameworks (Django, ReactJS, NodeJS)
  • Experience profiling and optimizing code for performance
  • Experience with tools/frameworks such as kafka, redis, elastic search, and graylog a big plus
  • Good intuition for end user requirements gathering and UI/graphic design
  • Ability to write SQL queries, procs, tables and views that actually work
  • Practical understanding of design patterns and a good intuition for system design
  • Experience working with Real-Time or distributed processing systems a big plus

Primary responsibilities estimated percentage allocation:
  • 20% Technology Leadership: design, mentoring, requirements gathering
  • 20% Relationship Building: requirements gathering, brainstorming with end users
  • 60% Heads Down Development
INITIAL SUCCESS CRITERIA
The successful candidate needs to hit the ground running, balancing very short term tactical needs and longer-term in-flight projects needed by our clients Front-Office team. During the first six to twelve months the Senior Developer - Investments will have learned enough about our clients business, processes and applications that he or she should have accomplished the following:
  • Taken ownership of some key front office projects and systems that are being built to facilitate our investment selection, trading and/or risk management activities
  • Demonstrated a high level understanding of the various Investment business processes at our client and the accompanying data needs, as well as the business reasons behind the processes.
  • Manage a small team of in-house and outsource developers, taking responsibility for their productivity and code quality; as well as personally made hands-on contributions to the progress of that project portfolio
  • Forged solid relationships with key partners in the front office and developed a vocabulary that demonstrates a strong understanding of our products and services
  • Begun to contribute to the broader client IT conversation, considering how our data architecture, systems architecture and technology choices need to evolve to provide the best experience to our decision makers
KNOWLEDGE AND SKILLS REQUIRED:
  • Business Knowledge/Quantitative Skills
    • Experience working with financial systems including trading systems, research analytics, risk measurement, and data warehousing systems
    • Working knowledge of financial instruments including fixed income, equities, and currency derivatives; experience with alternative investments preferable
    • Ability to understand complex financial analytics; quantitative analysis skills
  • Communications
    • Excellent interpersonal and communication skills are essential to interact with all levels of management, end users, quant developers, and IT team members
    • Proven technical writing skills, the ability to summarize and clearly articulate complex issues/technical documents utilizing the Microsoft Office suite
  • IT Knowledge/Experience
    • Demonstrated experience working as a developer on front office systems
    • Strong Python development skills; experience writing functional programs, as well as stored procedures and functions
    • Experience using .Net framework and C# is a plus
  • Business Analysis
    • Ability to understand core business processes, analyze business problems and translate business needs into detailed technical requirements
    • Demonstrated ability to partner with internal clients (business groups) to gather detailed requirements in order to plan, develop, install, test, and maintain high-quality, effective data driven systems
  • Leadership
    • Strong leadership skills
    • Ability to build supportive relationships and commitment of both end user and IT team members to team goals and objectives in fast-paced environments
    • Experience in influencing user groups as a thought leader with respect to processes and systems
  • Decision Making/Problem Solving
    • Demonstrated clear, analytical thinking and sound judgment
    • Ability and desire to make timely decisions based on analysis
    • Demonstrated strong problem solving capabilities
  • Initiative and Teamwork
    • Ability to direct oneself with minimal supervision and work together with multiple stakeholders and IT team members to successfully deliver projects
    • Desire to work in a relatively level working environment where reporting lines are not necessarily hierarchical
    • Willingness to take responsibility for getting things done
    • Ability to multi-task
    • Strong work ethic
BACKGROUND AND TRAINING:
  • A Bachelor of Science in Computer Science or other related discipline (although strong experience with a less directly related degree will be considered)
  • A minimum of 10 years' experience developing software in the finance industry
  • Formal problem solving and/or analytical training/experience a plus, as is experience working with management consultants
  • CFA or FRM a plus