Role of Solution Architect
IMPORTANT: This is the second part of the discussion with Lahiru. First part can be found in episodes section.
The Script of the Episode:
00:42 Reusability (How to reuse models and make sure you’re not building them twice)
03:01 Advantages of having SDD
17:58 Scalability (What is important to consider when designing (SDD))
23:48 Lahiru’s experience with hyper-automation
26:53 TOP 5 technologies for SA
30:07 New solutions to dive into (Lahiru’s experience)
31:38 Next big player in Technology
33:50 Maturity of Artificial Intelligence
36:13 PRO’s and CON’s of being Solution Architect
43:35 How the role of Solution Architect will look like in future
46:23 DO’s and DON’Ts for Solution Architect Role
About the Guest: Lahiru Fernando, Executive Lead @ Boundaryless, Sri Lanka, UiPath MVP
It is all about knowing your environment when it comes to the reusability: “When I feel that this has been done already, I just do a quick search at marketplace just to get understanding whether it’s already there or we need to build it from scratch and put it to the marketplace to use it in the future projects.” Lahiru points out that they do the same with their internal library as it is good to have your built components by hand. They mostly store the code on a share–drive or GitHub.
Advantages of SDD & Scalability
There are several advantages for SDD creation before starting the development: without an SDD you may lose an overview of possible reusable components. Usually, before development starts, the solution architect checks the marketplace and internal library (source control – GitHub, Azure, SVN) if the components already exist. This check helps to avoid recreation of existing code. Even for the most skilled developer, the solution can start to look ugly at some point, and he/she needs to decide whether to rework it and make it more readable or handle it. While reworking SDD takes a few hours, but to fix the solution on the code level will take days. Also, with SDD you’ll experience the lifecycle of the solution and think upfront about what problems to avoid. You can split the work to multiple developers, and all of them will understand the complexity of components. Lahiru’s story about working on a solution without an SDD and coming with two different solutions proves that cooperation is hard when you don’t have instructions and documents to follow.
Also, it is not the best approach to let new developers deal with an end-to-end solution. As Eduard explains, ECTIVE has its own 20:10:10 principle: Junior developers can develop small components and review components of each other. They move to integrations (putting the components together) after developing 20 components (with the help of a solution architect or designer). They’ll start with the dispatcher first and then move to the main solution. Only after that do they draft the first SDD’s. The highest level is the developer who creates his/her own SDD’s based on PDD’s.
Don’t forget that SDD is very important for scalable automation as it allows to keep good maintenance and helps to grow the internal capabilities. It does not prevent you from having changes and modifications but rather makes changes easier to handle. To sum up: “Building robots without any SDD created is like building a house without any plan.”
Main aspects to consider when scaling automated process:
- Is the system capable of handling more data?
- Can it work in an unintended environment?
Lahiru’s experience with new solutions seems never-ending as he is “trying everything to be able to know what you can provide and have.” Some of the current ones include Atorix, Python, and process mining.
TOP Technologies for Solution Architect
- Document Processing
- Process Mining
- Data Analytics
According to Lahiru: The next big game player regarding technology is and will be artificial intelligence. He mentioned an experiment when the robot could call the developer and let him know that the process has ended and discuss problems regarding the process: “There is no limit with Artificial Intelligence. It already produces a good result. There is, however, a lot of room for improvement.”
Advantages of being Solution Architect
- not being limited to certain area
- added freedom
Dark side (disadvantages) of being Solution Architect
- dealing with lot of people from different backgrounds
- people not providing enough information
What about the role of Solution Architect in the future?
The position will be there, with changes in technology coming quickly, there will always be a lot of things to learn. So, it will be difficult to catch up.
DO’s for Solution Architect role
- provide the best, most efficient solution
- be up-to-date with technology
- lead the team of developers with the best practices and standards
- gaining both business and technical expertise
- constant improvement for you, your team and customers (set a mindset)
- don’t try to build everything from scratch (look for reusable things)
- focus on SDD preparation
DONT’s for Solution Architect role
- focusing on development only
- taking on BA role as well
Lahiru’s message: “Talking about RPA, it’s a growing technology and it’s a fast–moving domain, I would say. I’ve personally experienced that. In the future, RPA is going to be a mandatory requirement for any job that you’ll work in. Maybe you are already working in a job with a technical role or maybe you are a student trying to find a job. Still, either way, the RPA is going to be there, and it will affect the role you are doing right now in different ways. I’m not saying you are going to lose your job, but it will change the way you work. So, back then when people invented and introduced computers it changed a lot of things… when they introduced different web applications and all these systems we are working with right now that also changed the way we are working and with the RPA it’s going to be the next mandatory requirement for every opportunity that you are going to get. It is going to be there and sometimes the RPA will be the requirement they are looking for in job requirements. So, make sure that you are ready for that. To get ready for it, learn what RPA is. If you already do certain things, try to improve your knowledge, there are enough resources out there, it’s free, there are a lot of resources, a lot of articles, UiPath is also providing community events platforms for you to attend webinars are people are also providing personal videos to share the knowledge. There are a lot of people who are willing to support them and being a mentor. And since I am part of all that, if you need any help feel free to reach out to me as well on any platform that you wish. Stay updated and make sure you have a bright future with robotic process automation.”