In the previous post, I wrote about why domain knowledge is important for developers of WealthTech projects. Unfortunately, we are not always able to find out in advance exactly how much knowledge a hired developer has. Moreover, developers may have theoretical knowledge and lack practical experience.
This is why I want to discuss the ways you can improve developers’ domain knowledge and broaden their expertise.
Wealth-management knowledge is about more than just understanding the terms; it’s about solution patterns, technologies, and standard practices set in a particular company.
I would highlight the following aspects of wealth-management knowledge as important:
- Understanding financial terminology;
- Understanding processes in the industry;
- Having access to a base of common solutions;
- Being aware of company practices.
Here, I’ll share some ideas on how your software engineers can enhance their knowledge in WealthTech.
It’s natural for developers to lack initial financial knowledge, since they have been trained in other kinds of skills. When they start working in the wealth-management industry, using quite a different knowledge base, they cannot really be expected to understand books on capital markets or investing. However, if the basic terms and concepts are described in language they understand, all further learning will be easier and more efficient. This is why I decided to create a series of posts (starting from “Must-Know Wealth-Management Terminology for Software Developers”) in which the main wealth-management terms are described in a manner that is clear for software developers, using simple descriptions based on mathematics, formulas, and charts.
I would also recommend Khan Academy as one of the best learning resources, where everything is explained very simply and clearly. Investopedia is another great source of financial knowledge, in terms of financial terminology, concepts, and investing strategies. Also, some articles on financial literacy for developers themselves and their families can motivate them to learn the domain and impove their own financial habits, for example, this CreditCards piece.
Besides just reading explanations of certain terms, developers should talk to people working in the industry. If you want to be sure that developers correctly understand the concepts behind capital markets, ask them questions and explore their understanding of particular terms, such as assets and securities, bonds and stocks, risks and returns, etc.—then you will be able to see where they need more clarifications and help them to avoid misunderstandings and later needs for rework.
Note that for developers, mathematics is a closely related discipline; fortunately, wealth management is strongly based on formulas and algorithms. Thus, when you explain finance-related aspects to developers, try to shift the terms to mathematical ground.
Processes in Capital Markets
As developers create software for WealthTech, they also need to get a picture of the processes they are digitizing. Reading financial books and news can help them to widen their knowledge. Unfortunately, there are few introductory books in the wealth management; most suppose that readers have already received basic financial education. However, there are a number of online courses on finance, wealth management, investment, capital markets, and financial engineering, such as the following:
- Coursera (courses include recorded video lectures, auto-graded and peer-reviewed assignments, and community discussion forums);
- MIT OpenCourseWare (this platform plays a leading role in economics education, research, and public service, and is cited as a model for American research institutions);
- edX (this platform details topics in risk management, pricing models, globalization and more with courses from Caltech, MIT, TsinghuaX, and other top institutions worldwide);
- FutureLearn (free online courses from top universities and specialist organizations).
At this stage, talking to people from the industry is also extremely useful, and is one of the best ways to pick up practical knowledge. Spend some time giving developers satisfactory explanations of what asset allocation is, how an optimal portfolio can be built, and why diversification is required. The list of wealth-management aspects may be very long, which is why dedicated meetings should be held on a regular basis.
Try it, and you will see that the outcome will compensate for the time spent—developers will better understand your requirements, their work will be done more accurately, and less rework will be needed.
A Base of Solutions
Everything mentioned above concerns theoretical knowledge. However, that is not the only thing developers need—practical knowledge is important as well. The best way to gain practical domain knowledge is to work within the industry and absorb information from every possible source.
Besides developing financial software, developers may significantly widen their expertise, if they know how similar problems have been resolved by other experts.
In our company, we have implemented a Competency Center where we can gain FinTech knowledge, including practical knowledge about payment systems, wealth management, insurance technologies, blockchain, etc. In addition, our knowledge base contains descriptions of every FinTech solution not under NDA, preferred technologies; and our own frameworks and APIs.
To transfer this knowledge, our developers have access to all knowledge gained, and may use it for implementing tasks on new projects. Moreover, we encourage them to undergo training programs, and we provide seminars and meetups at which developers can share their experience, discuss solutions, and generate new ideas. These new ideas and solutions enrich our existing base.
As a result, productivity increases significantly, while the number of bugs decreases and the quality of development improves. I wrote about how domain knowledge influences the quality and time of development in one of my previous posts.
Practices in a Particular Company
Each company has its own ideas, methods, and practices, which may differ from those generally applied. This is why it is vital for software engineers to be aware of such differences in our company. It will enable them to better understand your requirements and complete their work more accurately, according to algorithms and logics approved in your company.
To make developers aware of your approaches, it is very useful to do the following:
- Create a knowledge base that covers trends, concepts, operations, and solutions.
- Involve developers in meetings at which the logics of the software will be discussed. There, software engineers can see the software they create from other angles, understand critical issues, and obtain additional knowledge on processes in the industry.
- Hold workshops and seminars at which IT experts can discuss their questions with you, and where you can give them insights and improve their understanding of core aspects in the industry and unique approaches in your company.
- Answer questions, clarify, and try to use examples. Keep in mind that developers usually have a mathematical mindset; when explained using formulas and diagrams, terms and processes will be clearer to them.
- Prepare demos. This may be highly useful when you need to clarify the same thing several times. As new developers join the team, you can refer them to the demos, which should help them to obtain a general understanding of the approved practices, processes, and logics in your company.
There are several ways to broaden your software engineers’ knowledge in wealth management. However, the most important thing is to encourage them to pursue this knowledge. Despite the fact that many developers believe that programming skills are most important for developers and domain knowledge is only required for business analysts and technical leaders, I have experienced many times that the more thorough software engineers’ knowledge of finance and capital markets, the better the software we get.