I've now met 150+ RPA developers but these are the 20 signs of a 'truly exceptional' RPA developer!
Kieran Gilmurray
??♂?The Worlds 1st Chief Generative AI Officer ?? 2 * Author ??? Keynote Speaker ?? 10x Global Award Winner ?? 7x LinkedIn Top Voice ?? 50k+ LinkedIn Connections ?? KieranGilmurray.com & thettg.com
There are 'so called' paper certified RPA developers, there are 'citizen developers' and then there are 'truly exceptional' RPA developers.
Whilst the Head of Intelligent Automation is a keystone in your Intelligent Automation program; your RPA developers are its building blocks for success. Get this role right and you have the foundations you need to succeed. Get this role wrong and you have built your intelligent automation foundations on sand.
Below we outline the skills and attributes needed in your RPA developer roles if they are to add bucket loads of value. Remember your organisation needs to determine which unique set of characteristics are most important for your strategy and business.
1. Strategic yet tactical view. Every employee in every business needs to understand that they exist to deliver business outcomes. They are not employed to 'do coding', 'do marketing', or indeed 'do RPA'. They are there to deliver business value that is tightly aligned to organisational objectives.
Too often developers fall in love with their code. They forget that they are employed to deliver strategic business outcomes (i.e. profit from an activity or product for which customers are willing to pay).
"Ask your developer to talk about "Why - What - How" of the automation. A good developer will quickly work out the "What" and "How", from documents. It is Tactical. A great developer will step up. He/ she will listen actively to users and learn "Why" certain ways certain things happened. Root causes, then real problem solving come from the "Why". It is Strategic."
Eric Nguyen, Robotics & Automation Lead, Keynote Speaker
2. Curious, adaptable and excited by change. Developers need to be adaptable. They need to be able to pivot and change. This change may involve moving between processes or it may mean learning new parts of the business. Having a curious, 'willing and eager to always learn' mindset to try new things is as key as possessing the diligence and patience to get the job in hand completed.
If your developer is not excited emerging technology then, as Jim Collins would say in his excellent book 'Good to Great', they are in the wrong seat, on the wrong bus. Hire people who are excited by what new business outcomes can be delivered from new technology. Don't hire people who are not excited about using new tech to solve business problems.
"The best developers I’ve ever worked with, are those who, when presented with new technology to work with, responded like a kid in a sweet shop. The entire journey from capture to production starts and ends with them, so their enthusiasm will form the foundation of the engagement. I remember sitting in a demo with a developer recently, whose sheer enthusiasm and excitement for what he was about to show me, grabbed my attention by the scruff of the neck and pulled me deep into his demo."
Edward Halsey, Technology Expert
3. Excellent communication, interpersonal and influencing skills. Excellent communication, facilitation, and relationship building skills is a must. The ability to communicate in order to elicit or impart information to get their job done is key. A concise, clear and well formed conversation can save hours of typing and days of fixing when something is not properly understood.
"The truly exceptional RPA developer would have a communication mindset that includes stepping out from behind the curtain and communicating with the client or executive stakeholder. It's one thing for an RPA developer to be seen as a strong peer or team leader, but they also must have the ability to switch gears, take off their propeller hat and explain the current status and next steps to a client or executive."
Brett Fraser, SVP Operations
Developers need to be able to communicate articulately in: Agile ceremonies (stand-ups, retros, sprints, refinement sessions); during team meetings, problem solving events or code sharing sessions; with onshore and offshore teams; with SMEs, etc. Paired coding is highly recommended as a way of developing understanding and learning through shared communication (see Richard Sheridan's excellent book on paired coding, Joy, Inc.).
"RPA or any other automation technology will not provide instant miracles. It's all about people: developing their skills, creating an automation positive culture, engaging your "customers" in design and implementation. Even though tech can be fast, people and company cultures require more time to evolve."
Jani Rahja, Head of Intelligent Automation at Posti Group Oyj
4. Coding and logical reasoning skills. There are 3 types of developer; citizen developers (i.e. a domain expert or subject matter expert who is not a typical IT user); RPA developers (experienced and or certified in one or more RPA tool) and programmers (experienced is using one or more programming languages such as C#, VBA, dot net, python, etc).
Whilst much is made of low-code; no-code tools and the increasing need NOT to have coding skills; organisations can quickly run out of run way when it comes to completing automations through click, point and record RPA platforms.
"Having a programmer is key to a successful digital transformation program. Programmers will allow your teams to take full advantage of off-the-shelf tools and will pave a road for highly customised in-house tools. Having a programmer on your team, or as a consultant, will significantly lower the overall cost and will improve the effectiveness of company-wide RPA efforts."
William Roseberry, Owner of RoseberryPi LLC
In order to piece together a puzzle you need to follow logical steps. The ability to break business problems into coding or sequential visual flows involves logical thinking that calls for structure, for relationships between facts, and for chains of reasoning that make sense.
If you don't possess a logical and ordered mindset (think Insights profile green and blue) then it is unlikely you will be able to become an excellent developer or programmer.
"You don’t need to have actual programming skills if you want to become an RPA developer. However, if you want to be better than average in this field, you need to be able to think logically – analyse, reason and deduct – and programming skills help develop this mindset.”
Jan Mastalski, Lead RPA Developer at innogy
5. Copy writing skills. The ability to communicate through documentation is a key part of any RPA role. Being able to develop documents that clearly and succinctly communicate an intended message is a key part of any developers role (e.g. solution design documents; test plans; process design instructions; solution designs, DR/BCP plans; emails to managers or SMEs; annotations within code that others can follow; process instruction documents; etc).
“Especially when working as a 3rd party in a client, the need to document and then gain sign off from process SME’s and senior leaders requires, excellent process documentation skills, as well as an ability to be authoritative while collaborative, the skill mix needed goes far beyond that of a great “coder”.
Wayne Butterfield, Automation Expert
Copy writing skills are essential in order to develop the skills necessary to communicate the intended message effectively.
"The best RPA developers I have worked with executed the same level of detail and effort on creating clear-cut documents as on developing automations. Being capable to take a step back, look at their own documents with a fresh pair of eyes and through the lens of the receiver makes the best developers stand out from the average ones."
Nirmala Chaturi, Senior Manager | Digital Process Excellence
6. Empathy. Automations should not be designed for robots, they should be designed for people. There is no use producing the very best technical solution if the end user cannot work with it. Designing for the digital age should involve the end customer or user. The end user needs to have an excellent robot - person experience (UX) or they will resist engaging with what you are trying to achieve.
"One of the areas where RPA developers may struggle with is they forget that end users routinely inherit the support of the automations they create. In order for them to be effective at managing these automations in production, they must be armed with telemetry and monitoring tools that speak the “language of the user”. Meaning, screen shots, video recordings and log syncing easily allows an end user to quickly diagnose a problem. They might not be able to fix the problem on their own, but diagnosing it is more than half the battle. Programmers generating hexadecimal error codes won’t cut it."
Joe Labbe, VP of Business Development
Understanding people, the necessity of excellent employee (EX) and customer experience (CX) and then translating that into exceptions user experiences (UX) is key to digital success. Design thinking can help developers understand their customers but emotional intelligence and genuine human empathy should be inbuilt.
"Great developers love the customer, poor developers love the code and the tools"
Paul Arnold, Head of Product and Development at Cortex Intelligent Automation
7. Excel and Visual Basic for Applications (VBA). Excel is ubiquitous. It is used in finance, HR, customer service, digital marketing, and many more business areas. Excel is used in nearly every industry you can think of. Combing the data manipulation capabilities of excel and VBA with RPA makes for a far greater range of valuable automations than almost anything else.
"The vast majority of RPA use cases leverage Excel because it offers the perfect blend of capability, inter-operability and user friendliness. Thus, an exceptional RPA developer must be proficient across all functionalities from basic formatting to pivot tables to VBA. One common pitfall is to assume that all developers have Excel expertise, because in reality not many do!"
Martin Lau, Global Automation Lead at P&G
8. High attention to detail. Unit, integration, quality assurance and functional testing are required in every automation instance. If your developers vomit out poorly tested automations, not only will your program and teams reputation suffer, the return from your program most certainly will too.
"An exceptional developer will not only look at the happy path, but will also consider all the various possible exceptions that can occur in their process and aim to build a resilient bot. This not only ensures that the bot works well, it also recovers gracefully from unexpected errors and flags them for review while it continues with its task."
Nitin Kamra, Senior RPA Manager
Untested code results in data errors, broken processes and large quantities of expensive recursive testing and recoding after your program has gone live. This wastes time when your developers should be focused on delivering wave after wave of new value instead.
"When it comes to code development, the devil is even more in the details. Good developers must optimise code performance and resilience "by design".
?It is crucial to ensure that developers build highly maintainable and expandable bots, and not just “Toy” bots."
Ralph Aboujaoude Diaz, Director, Core Tech
9. Can do, positive attitude possessing high accountability for results. You can't train attitude. No one should need to be motivated by their manager to do their job. Individuals should hold themselves accountable and responsible for delivering excellent business outcomes.
"Realism is, automations will get broken. From a developers' perspective this can sometimes feel frustrating. You have to love issue solving, going deep into the details and thinking creatively, finding solutions in places you would not have thought of before. And be very, very persistent in finding solutions."
Nirmala Chaturi, Senior Manager | Digital Process Excellence
Inevitably they will be hurdles in any RPA program. Having positive people in your team will help over the bumps in the road that lay ahead. Exceptional coders must be problem solvers; they don't wait for instructions, if they own it they build it and they support it to the best of their ability because they want to make a difference.
“Any good developer needs to be able to understand the challenges and risks associated with any process build, however the very best developers will tie that in with an ability to problem solve, and therefore not just ignore, but mitigate any associated challenges. This mix of challenge identification and problem solving capabilities is key to being an expert RPA developer.”
Wayne Butterfield, Automation Expert
10. Agile and/or project management skills (e.g. Scrum Master, PMP, PRINCE2). In a fast-paced digital world, more and more firms are using Agile to deliver value to their customers faster. Developers with Agile Scrum skills and Agile mindset will help you ship wave after wave of value to your customers. If your team does not work and deliver in an Agile fashion, then you may never make a return from your investment.
"Agile development is a perfect fit for RPA. Developers need to understand a process, take it apart and find the simplest most value add section of that process. Then deliver it quickly, constantly collaborate with the process SME and demo their work to get feedback. This will ensure the process is fit for use and helps ensure the SME is engaged throughout the development cycle."
Matthew Coffey – Global RPA Lead, Pearson
11. Organised and willing to document. Experience with all aspects of Governance controls, including reporting and metrics, RAID management, impediment tracking, financial management, and working and steering groups.
"An excellent developer will sense the suitable level of detail that needs to be documented, notably from an incident and change management perspective. Being able to detect why processes were modified after go-live, with the right documentation and governance in place is something the internal audit department will love you for."
Nirmala Chaturi, Senior Manager | Digital Process Excellence
12. Transparent and willing to share. Some of the very best RPA developers can be some of the worst team members. Skilled developers with multiple years' experience are few and far between. Therefore, their openness and willingness to both document and share that knowledge with their colleagues is key in growing your team's collective capability.
"The most important output of any great developer is more great developers. Always be learning, always be teaching."
Paul Arnold, Head of Product and Development at Cortex Intelligent Automation
13. Data and process analytical driven. RPA enables the writing of data points that can provide valuable process analytics (e.g. process exceptions, process time, cycle time, wait time, takt time etc). By redesigning processes for optimal digital flow, a business can save large quantities of time, which may then result in monetary savings. Deriving new and interesting process analytics can lead to new insights which lead to more efficient ways of working.
Additionally, RPA developers must be able to understand the business case presented and the data behind it. They must be able to confidently talk to this when engaging with colleagues, stakeholders and to understand the value of what they are delivering. Developers must understand data, or more importantly, they must understand the power of data and how it can drive business outcomes in order to be successful.
14. Machine learning and artificial intelligence. Developers who not only understand the power of data but who can also manipulate it to derive data driven decisions are like hen's teeth (i.e. rare to non-existent). RPA is excellent for automating routine, standard, data driven processes or tasks. RPA is not capable of doing more complex cognitive tasks such as document scanning or higher-level decision making.
RPA is one tool in an intelligent automation digital transformation tool kit. To create a true digital workforce, you need to have the same capabilities as a human (i.e. acting, thinking, analysing, sensing, etc.). Without cognitive and analytical capability, RPA is a little more than a macro, with limited use. Therefore, you need intelligent automation developers who can also u build or code other intelligent tools to maximise business outcomes (e.g. OCR, chat-bots, etc.).
"Although RPA is predominantly configuration, with occasional coding. The use of Intelligent Automation, with technology types such as ML (Machine Learning), NLP (Natural Language Processing) or Machine Vision, is a different kettle of fish. Each tooling type needing additional skills, many of which would tend to be aligned to a more traditional developer / data analyst skill set vs those that have been more process oriented."
Wayne Butterfield, Automation Expert
15. Scale thinkers. Developers need to think about tomorrow and not just solve todays problems. Processes which require code that enables multiple robots to run sequentially is very, very different to building a 'one process, one robot' code model.
"The drive for improvement in quality, scope and scale is infectious and pushes a team to not just meet its targets, but exceed them. In the modern era of Hyperautomation the phrase 'Think Big, or Go Home' fits perfectly."
Arif Khan, Customer Success Manager and AI Ninja
Developers must code for scale. They must build components that can be ran by multiple robots. Components must also be built in way that they can be used in as many different process structures as practicable. They must also be as easy to maintain as possible, be easy to discard and simple to pick up again so as to rapidly build new value.
"Good code looks good to me. Great code looks good to you"
Jeremiah Cose, RPA Director at Kaiser Permanente
16. Patience, empathy and laser focussed on customer and employee experience is crucial. Whilst RPA is sold as a fast technology; transformation is not. It takes time to learn to code properly (i.e. 18 - 24 months to achieve expertise). It takes time to learn a business (i.e. months and month). It takes time to pass on your knowledge and skills to people who are non technical. Patience and understanding are both key to developing great automatons that deliver exceptional business outcomes whilst simultaneously delighting and exciting your customers (CX) and employees (EX).
“Wall-E was an automated robot gone rogue. For once I’m happy about that. Because he was super patient, he was understanding, he was curious and he wanted things to grow. We need to be more like Wall-E, the journeys we and our customers take should be ‘out of this world’. The only way we’re going to make that happen is to use our time effectively on those things otherwise what’s the point in trying to create automated processes with no direction. Everything will be floating up in space. “
Jessica Levett, RPA Architect
17. Actual RPA experience in a business working with processes. There are a great many paper qualified developers whose experience is not worth the digital paper their qualification is written upon.
"Being a great “flow logic” (RPA) expert is not the same as having that fundamental understanding of how to answer a business problem with data and mathematics (AI). Knowing what package to load is not the same as understanding why so, and also when it cannot be used either. Soft skills will absolutely add value to any RPA or AI specialist. But knowing a business and why all these skills need applied is absolutely vital to delivering actual value for a business."
Peter Helth, Digital Change Leader
Gaining certification for any RPA product is just one of the steps towards becoming an exceptional RPA developer but nothing beats real, hard won battle scars to understand what does and does not work in RPA land.
"Master Yoda taught us that 'the greatest teacher, failure is' and this is especially important in any area of emerging technology. There is no substitute for directly implementing things, having successes and failures, and learning from them."
Arif Khan, Customer Success Manager and AI Ninja
18. Multiple RPA tool. An exceptional RPA developer knows one RPA tool exceptionally well but does not mind developing in another. No one tool solves every business challenge. The more tools in the developer tool kit, the more likely they are to solve the business challenge using the right tool.
"The best developers are experts in end to end RPA delivery, with the tool being just a small proportion of the end to end outcome. The best developers can pick up and become and extremely competent in a tool within a single build, the ability to be a swiss army knife vs a single tool expert will grow in importance as the rise of multi-vendor CoE’s continues to rise."
Wayne Butterfield, Automation Expert
19. API experience. A truly exceptional developer should develop a working knowledge of APIs. RPA can be fragile. RPA depends on GUIs and those may change for all sorts of reasons (e.g. application upgrade). If APIs can be used instead of robots, or preferably as a complimentary tool when the job demands, then that can be very powerful automation solution.
"RPA developers will quickly realise that rapidly integrating via APIs is just as powerful, and more robust, then integrating via the User Interfaces (UI). Good developers have a natural affinity and bias to APIs and will exhaust that avenue before reverting to UI automation. They must be comfortable working at the API level."
Arif Khan, Customer Success Manager and AI Ninja
20. Project Management Skills. Whilst scrum masters are key, exceptional developers should be able to create structure in an uncertain environment. They ought to be able to delegate tasks and stay cool under pressure as they solve one problem after another. They should be able to supervise and organise activities as well as ensure that their goals align with the company's objectives. A truly exceptional developer is responsible for the successful co-ordination and management of their code inter-dependencies, including oversight of any risks and issues that arise.
"Having Project Management skills does not just translate to being able to create and manage a project plan. It entails understanding and being able to manage all aspects of delivering a success technology project and coping with all potential barriers to that success. Your best developers will do this instinctively."
Arif Khan, Customer Success Manager and AI Ninja
If you can't hire a truly exceptional RPA developer then hire someone with the right smarts and and train them up. Hire the "smartest person" you can afford, so they can develop the best robots possible. Then encourage and develop their enthusiasm about technology and what it can be used to deliver. A truly exceptional RPA developer is a smart facilitator: they will always try to find a solution. But hire and develop someone smart who will say 'no' when RPA is not the right tool to solve the business problem. Hire someone who loves technology, infrastructure, computing, gaming, solving puzzles and finding solutions to business problems. The harder the challenge, the better!
If you don't hire or developer the right RPA developer and decide to 'make do', your RPA journey is almost certainly over before it has begun. Get that decision right and you are set for an exciting and rewarding journey ahead.
What do you consider to be the most important skills and attributes of a truly exceptional RPA developer?
If you like this article then you may find these useful too.
- 8 questions to ask before you implement RPA.
- 14 rules for Robotic Process Automation (RPA) and Intelligent Automation (AI) success
- Behavioural traits of an Agile Developer
- If you are not willing to go all in, then don’t put on your RPA swimsuit.
- The biggest lie told to RPA customers - 50 robots equals success
- 40 essential selection criteria to choose an RPA platform
- The A-Z of RPA, AI and Digital Transformation
- 9 Key Roles in your Robotic Process Automation Centre of Expertise
Managing Partner of the First Technology Architecture Firm in North America
1 年*chuckle* - I had to chuckle while reading this because what you're describing is an Architect right across the board and Architects are getting harder and harder to find. Nice read.
SDET / Test Automation Developer | Ex-Monitor Deloitte
4 年Kieran - This is a comprehensive list - it can serve as a great guide while recruiting RPA developers. Thank you for putting it together. For me, the biggest takeaway is how an exceptional RPA developer is different from their more popular counterpart in traditional software development. Given most RPA processes are spearheaded by the business side, a willingness to understanding the underlying business case along with good communication and project management skills are key differentiators.
Helping elite minds summit the industry
4 年Awesome read Kieran! Very rarely do we find all 20 though. What would you say are the 3 or 4 really key "signs" that are effectively a must-have to be above average?
Senior Intelligent Automation Consultant
4 年Great article Kieran. Certainly a great list to aspire towards. How (if at all) do you see this list changing as we move more towards intelligent automation, AI etc. rather than simply RPA?
Chief Technology Officer (CTO) @ EncompassFi | Payroll | Merchant Services
4 年Always enjoy these articles. Thanks for letting me contribute!