Legacy ECM and Enterprise Search
Federated Search Approach
Migration of legacy system is one of the need of our big data giants due to reason below;
- No Api
- Old database
- No support
- Performance
- Retention old policies
- Restructuring old structure
And due to digital transformation applications or legacy Enterprise Content Management Systems (ECM’s), Federated Search has been a very often used solution among content management giants. If we want to build a new system that accesses the contents of the existing ECM and we don't want to use an extensive workforce to migrate those Legacy into sweet and easy to use ECM. And due to legacy reasons it was thought many times whether to use federated search. Those reasons can be;
- Legacy users
- Legacy contents
- Legacy integration and
- Legacy technology
Federated search has been used to solve all the problems above adding interoperability and transformation of legacy systems and building new systems. As example, in a bank their mortgage is on Documentum, contracts are on IManage and account is on Open Text. Federated Search can make it possible for loan teams to be able to show loans from Documentum and contracts within IManage by connecting the new system as done by many new ECM vendors.
Is that soooooooooo easy?
It is fairly easy to say by marketing wing of a ECM consultants that why should we move migrate the old system if we can search by federated query and it is very easy to query certain system, extracts the result and finally merged, why do we need unnecessary additional index, however there are cons.
Cons:
- Performance
- Merging
- Security
- System Fault Tolerance
- Logistics
Hence, depending on ECMs to ECMs and their data, their patience of compromising the performance and juggling capacity with security, some one can still praise the Federated search or they can research another approach.
Publishing Approach
In terms of querying the legacy ECM directly and merged back, there is another approach that I am going to recommend is, Publishing approach. Same theme where businesses want to access the data but hesitant to replace those legacy systems. Publishing approach builds and parallel systems where it pulls the data of multiple systems in extra storage index to search and any ways these days storage is progressively cheaper.
In this approach a messaging system can push the documents and metadata on topic for search whenever a new document creates into legacy and a parallel consumer can pull those data from the topic. With this pull and pull the new repository will have metadata and copy of the document as well.
By this way, businesses can still maintain their old system to store their new data as well as can provide the shared search repository to search data for other systems while integration.
So the publishing approach gets an edge over the federated approach in following areas.
- Integration
- Performance
- Security
- Data Format Enhancement
- Can be stored into multiple repositories.
I will recommend using Solr/Lucene to use a publishing approach, however choose your own convenience.
Cheers! Happy Searching :)
Follow on Medium
AI And Financial Industry
A worldwide technology has emerged and evolved over the years. From Siri Google Assistant, from Netflix to Pandora and from Amazon to Tesla, we are gradually adapting Arti.ficial Intelligence. It has been highly popular from giant enterprise like Amazon and Tesla or intermediary like Zoox or Twilio.
Similarly, Banking sectors have been seen increasingly investing its time and $$$ in Artificial Intelligence(AI). Their strategies are to drive cost and efficiency tremendously.
If I simplify, AI involves algorithms that can make decisions like human and sometimes smarter than human. Using AI technologies, banks can find data, filings, earnings and millions of research documents in one second. It can improve keywords to find suitable searches to help clients better than before.
Compared to other sectors like e-commerce or healthcare, adoption of AI in the banking sector is really limited due to its highly confidential nature of user data. However due to rapid growth of using AI technology in business via mobile or other devices, banks also started to focus on what they can achieve through AI under the limited secured user data governance.
AI Use Cases And Application in Banking Sector
We are really thankful to advance technology concepts because every organization can use and make their application or business model more intelligent through Artificial Intelligence. Banks are also trying to be on stage by using AI in certain applications.
1. Chatbots/Personal Assistants
Chatbots and personal assistants are changing the interest of customers by providing a personalized experience to the user. Chatbots have indeed proven a powerful tool to customers and an unmatched tool that is saving lots of money for banks. Banks are racing to integrate chatbots to attract the customer attention and expand the brand and its service.
2. Complemented Customer Experience
Banking sector can enhance its customer experience through AI in their app. They can track customer choice, personalized suggestions, transaction trail, money variation to suggest to customers to either invest or spend, search patterns, and much more. Demand for this kind of AI enabled app in the banking sector has grown intensely. Overall banks can improve their customer service based on customer experience on apps with AI integration.
3. Data Collection and Analytics
Collected data from customers can be used by AI machines to understand the customer. Customer data can be used for segmentation that categorizes the customer based on their behavior which helps banks to target their customer in a better way. Banks are starting to shift their model where their products are now services and services need data to understand the customer to provide and serve them better.
4. Risk Management
Risk management analysis is one of the key areas where banks can save themselves from any kind of fraud. Understand the borrower when they apply for a loan, banks have to keep their personal data and at the same time banks have to review the financial status of the borrower before disbursing the loan. With the integration of AI, banks can easily track the recent financial transactions of the borrower and based on that banks can collect enough data that will empower them to decide either grant loan or deny it.
5. Loan Processing
Lending is the massive business of all the banks which directly and indirectly touches the economy of the world. To find out borrower creditworthiness is one of the crucial tasks for the banks before they process a loan to the borrower. For example the better banks can find out the creditworthiness of a client, the more easily they can streamline the process of loan in organization. In other ways the quicker and less hassle is really appealing to the customer.
With the use of Artificial Intelligence and Machine Learning, in a few seconds banks can find out, if customer lacks credit history, year or credit, FICO scores and top this traditional data, banks can also find out educational background like SAT scores, GPA, field of study, job history to determine creditworthiness of a borrower.
6. Detects Fraud
After every few weeks/months you hear the news about fraud of customer credit/debit card. AI with ML is on top when it comes to detect fraud and security. It can find out the past spending behavior of a customer to find our odd behavior of the transaction. AI never feels uneasy, if it finds the correct behavior as faulty and and it gets corrected by human intervention that itself corrects the ML and next time AI can skip that finding.
7. Compliance
Banking sectors are very strict in terms of their compliance and its rules. They consistently need to review and update their compliance and keep their system updated. In most of the banks they have their internal team to manage this compliance. Compliance team, update the documents, clean the webpages and other internal services. With AI integration, it can actively find the rules that apply to the bank and mark them compliant. It also improves the thinking and work process of the compliance officer and its internal team.
Whats Next?
Still AI is new and is being adopted by banks in slow or medium pace. But, AI futures in banking sectors are going to be multiplied. This whole technology is going to be really a game changer for banking and financial sectors as it is for other organizations.
Follow on Medium
Well Performed Engineering Team
Well performed team does not come from recruiting best people from the organization. It is a continuous effort to reach to the level, so one day you claim the best performing team.
Based on my year journey in M&T bank, I derived a few points that need to be outlined to get the best performing engineering team.
Define "What is best performance means for you and your team?"
A leader should define what the performance means for him and the same he can convey the message to his team. Well performed engineering teams have their own definition of high performance outlined and that of course will be inspired by company expectation. Without your own definition, a team can not achieve its objectives.
This sets up the goal for the entire team to keep the pace on and at the same time that also gives you some pointer to figure out where those objectives got failed.
Good Hire, Bad Hire
Hiring a good candidate does not mean you are building a high performance engineering team, rather hiring a good candidate who can match with company culture and constantly enjoy it. Good hire for a Software Engineering team does not mean super talented engineer, how much java he/she knows or how many algorithms he has written so far. Implicitly all those are important factors but we have a rather more important factor to understand if a new hire is diverse, he is going to understand your definition about the best performing engineering team. Best engineer has to work with another team of the best engineers who are diverse in terms of their language, understanding, country they belong to.
At the same time a bad hire can be super talented but has no team work skill set, he can come and destroy the culture of your team, damage the definition you derived for your team high performance as well as integrity of your company.
Leader is a member of the team, not boss
Once you define the goals of a high performing engineering team and share with your team members and everyone knows how they can be the member of the best performing engineering team. You are not supposed to interfere too much, how they are implementing those goals i.e. no micromanagement.
You need to rely on your team member strength and if few of your team members are blessed with more skills than you, then enjoy it. You should hire people more talented than you, always hire people who have more or a sort of different skill set than you so that you can have a totally diverse team.
You team member may know more than you and that is you should be proud of instead of feeling a threat.
Successful Culture
Create successful Culture, give lots of freedom to your team members. Many companies from giants like Google and Amazon or mid size market leaders like Github, Buffer, Basecamp, Etsy, always try to make their employees happy, healthy and not overworked.
After all, your brain’s resistance can work productively at a certain time if you work consistently. Healthy brains produce healthy products and tired brains deliver lethargic entities.
Setting a high bar does not mean setting a goal that is hard to achieve, don’t ever create a goal and when your engineer does not reach that goal, you are either creating inferiority complex for him or labeling him non productive for an immature estimated goal.
Room for Error
When you build your team, you should create a climate to have room for error and no one should blame each other for error but should learn from each other’s mistakes. It was well said that failures are pillars of success, failures are opportunities to learn and don’t repeat that mistake in future. Once you have made a mistake with any member of your team, lets scan the entire ecosystem and find the reason for that mistake, sit down with the entire team for not to blame one person but to introspect with all so that everyone realizes and is aware how we can avoid that mistake in future.
Collaboration is vital part of successful team
Based on my experience so far as a technical lead, It is important to create an aura where every engineer can trust each other and engineers are motivated to make decisions especially about their work. As their communication is vital among each other, other than communication with business, I would like to make sure their soft skills are excellent. I would love to focus on soft skills during the interview process since without soft skills, it is going to be a tough challenge for a team to develop collaboration. What motivates team After all, without a motivated team, it’s almost impossible to deliver a successful product or project. There are certain ceremonies you always need to celebrate with your team, like Crystal
Clear Goals
Positive Feedback
Equal Opportunity for development
Health Environment
Team Building Activities
There are many more to go, your team is like a family, however you don’t pick and choose members of the family, you get what to have now. But the Enterprise Engineering Team you choose, you build, you nurture them, you learn from them, you enjoy with them!
Follow on Medium