From legacy C# and SAS to a modern Python open-source stack
Case Study: Three-year digital transformation of a quantitative asset manager
Starting position
A quantitative asset manager with 140 employees depended on data-driven investment decisions. The quality of quantitative analysis was its core competitive advantage — and precisely where the organisation was hitting its limits.
The IT landscape had grown organically over 15 years. Application Development worked in C#, the Research department relied on SAS and SQL. Between these worlds existed a language barrier: prototypes from Research could not be transferred directly into production applications — every handover required extensive translation work. Projects took too long, requirements piled up, and the pace of delivery could no longer keep up with market demands.
At the same time, the ESG regulatory wave in the financial sector was creating massive pressure. Asset managers had to integrate ESG data faster, more transparently and more traceably into their investment decisions. The existing legacy stack could not deliver this.
Proprietary reporting tools such as Crystal Reports had reached their limits: difficult to maintain, slow, and the business was entirely dependent on the IT department for every adjustment.
Challenge
The challenge was not only technical but above all organisational. Three fundamental problems had to be solved simultaneously:
The language barrier between departments
Research, Portfolio Management and Application Development worked with different technologies and could barely collaborate on projects. What Research developed as a prototype had to be completely reimplemented by Application Development.
Speed
New releases were rolled out every three months — a rhythm that neither met the pressure to innovate nor the growing regulatory requirements. Bug fixes and minor adjustments had to wait for the next major release.
Empowering knowledge workers
Portfolio managers and quants wanted to run their own analyses, validate hypotheses quickly, explore new data sources — yet the available tools did not allow this without IT support.
Approach
The solution was a consistent unification on Python and the open-source stack for data analytics and AI. Not as a purely technical migration, but as an organisational transformation that affected every department and every level of the company.
The approach rested on four pillars:
A central data hub
Standardised data models, quality control for input and output, and unified access to all data sources. Instead of scattered databases and ad-hoc access — a single, reliable data foundation.
Python as a shared language
Research could build prototypes that Application Development could directly continue developing. Portfolio managers could create their own analyses. Everyone spoke the same technical language.
Agile development processes
Sprints, user stories, unit tests and fully automated documentation. The shift from large, infrequent releases to small, frequent deployments.
Systematic enablement
At every level — from analyst to portfolio manager, from junior developer to senior researcher.
Implementation
The training programme
44 employees were trained in four specialised cohorts:
Analysts
Introduction to Python and open-source tools for number crunching and data analysis. The focus was on efficiency: how to reach results faster for daily work.
Researchers
Often with strong mathematical backgrounds — learned to implement their research and prototypical applications in the Python open-source stack. A key aspect was software engineering: how to write code that not only works but can be further developed by others.
Application Development
The most comprehensive track: retraining in Python, developing stable, maintainable and scalable software applications including relevant libraries and frameworks. The emphasis was on software engineering best practices, unit tests and production-grade development.
Portfolio Managers
A content-focused track: how to quickly validate their own theories, check assumptions and efficiently gain new insights with open-source tools. The goal was not to turn them into developers, but to empower them to work independently with data.
Architecture and migration
The replacement of proprietary tools proceeded step by step. Crystal Reports was replaced by an open-source solution that not only delivered faster and better data, but enabled the business to create and customise their own report templates — without the IT department as intermediary.
Data models were normalised and standardised. The central data hub took over as the single reliable source for all applications and analyses.
A pragmatic example of the working style: when test data proved insufficient during development of the new Performance Attribution, the team quickly recognised that strict separation of development and production databases was causing more harm than good. Read-only access to the production database was perfectly sufficient for development and avoided the costly synchronisation process. All stakeholders were brought to the table, the problem was solved pragmatically — and development could immediately continue with current, complete data.
Collaboration at every level
The transformation was steered directly with the CTO and the Managing Director and founder. This direct line was critical for fast decisions and clear priorities. At the same time, personal exchange with employees at every level and in every department was a constant part of the work.
Not all team members could carry the migration. In Application Development, individual positions in the 10-person team had to be restaffed — a painful but necessary step that was communicated openly.
Results
Deployment frequency: from 3 months to 3 weeks
New applications and updates could be rolled out with quality assurance in a fraction of the previous time. Bug fixes and minor changes were implemented, tested and live within days.
A shared language
Research, Portfolio Management and Application Development worked in the same technology stack for the first time. Prototypes from Research could be directly continued without complete reimplementation.
Empowered knowledge workers
Portfolio managers validated their own hypotheses independently. The business created and maintained their own report templates without IT dependency. Analysts worked more efficiently with modern tools.
ESG capability
The modernised platform enabled faster and more transparent integration of ESG data into investment decisions — a fundamental requirement that the old stack could not have met.
Success factors and lessons learned
Migration always takes longer than expected. Technical migration is manageable. The human factor — habituation, relearning, acceptance — requires more time than any technical project plan anticipates. Providing patience and trust at the right moments was one of the most important tasks.
Personal credibility is non-negotiable. In a role as external lead over three years, you must convince not only technically but also build trust as a person. The willingness to communicate directly at every level — from managing director to junior developer — was decisive.
Pragmatism beats process. Questioning established separations and processes — as with read-only access to production data — not only saves time but signals to the team: we solve problems rather than manage processes.
Some changes require personnel consequences. Not all employees can or want to carry a fundamental technological transformation. Communicating this openly and acting early is fairer than a creeping overburdening.
Standardisation is the key. A shared programming language, standardised data models, unified development processes — these seemingly boring decisions are what enable the speed and flexibility an organisation needs.
What infrastructure has to do with investment outcomes
Quantitative strategies are only as good as their data foundation. Model on flawed inputs and you reliably get flawed outputs — regardless of how sophisticated the algorithms are.
The real value of this transformation was not the faster deployment cycle. It was the return to the core question: what is our actual source of judgement — and does our infrastructure live up to that standard?
The migration to the Python stack did not just modernise our technical foundation — it changed how our departments collaborate. The fact that Research and Development now speak the same language has fundamentally changed our pace of innovation.
— Chief Technology Officer
This case study describes an anonymised client project. Industry and company context are accurately represented; identifying details have been changed.