What is an automation developer?
Challenging and rewarding work? Great employment opportunities? Yes, please!
The demand for skilled automation developers increases by the day.
Suppose you want to become an automation developer.
What skills should you learn to spend your valuable time wisely? What are the practical things that an automation developer works on in their daily life? What things should you consider before starting on the path?
Let's interview a real automation professional, Henrik Vesterinen, to find out!
Full disclosure: Henrik works at Robocorp as a seasoned automation expert. This interview is still authentic, and Henrik's answers are unedited and unfiltered by the corporation!
Hello, Henrik! What is your background, and how did you end up as an automation developer?
Hello! I have an educational background in the physical sciences and started my working career at university libraries. I have always used scripting and programming to do tasks - I progressed from writing helper scripts to being a member of a software development team.
One day a recruiter called me and suggested I try robotic process automation at an IT consultant company. There, as a developer, I helped build a new RPA business utilizing the Python/Robot Framework stack. Since that, I have changed my workplace multiple times but have often been involved in building up Python-based automation businesses.
Knowing what you know now, what would you learn if you decided to become an automation developer?
I highly encourage learning Python, as it is versatile, powerful, and quite easy to learn. Having a computer science degree is absolutely not mandatory. Instead, get some practical programming experience! Think if you could use a script to automate some work in your current job. Maybe you could use Python to do some Excel data processing for you?
Editor's note: According to The PYPL PopularitY of Programming Language Index, Python is the most popular programming language based on Google searches for programming language tutorials. In the Stack Overflow Developer Survey 2020 Python was the top language that developers want to learn. TIOBE index indicates that Python's popularity is on the rise. Investing in learning Python seems like time well spent!
If you already know some programming, learn the best practices in software development. Automation is software development - and that is a good thing! You get access to the tried-and-true methods of the field and the support of the community. I recommend learning about testing and clean code. Install a linter to your code editor, which gives hints on how to improve your code.
Editor's note: Software development best practices are evergreen skills that retain their value no matter the language or the technology stack. Learning them does not go to waste.
Test automation is closely related to process automation - I would say it's a natural career path to switch between the two.
What does a "typical" workday look like from the point of an automation developer?
Writing code, testing robots, and communicating with the customer. Open and frequent communication is essential if you want your robot to succeed - the specifications will change, and obstacles will emerge.
Testing the robot (both manually and automatically) is an integral part of the development workflow.
What are some good things about being an automation developer?
The work is often quite independent: you are given a problem, and you can devise the best way to solve it. When using a real programming language like Python, you can learn a lot about software development and programming in general. You get introduced to a wide variety of technologies.
How about the not-so-great things about being an automation developer? It's not all rainbows and ponies, right? 🌈🦄
A lot of legacy applications. This might actually be a good thing, as they are often quite stable, and once you get the automation running, it will run.
Poorly thought-out process definitions. The business is not always sure what they want automated, and sometimes the processes themselves are very fuzzy. Successful automation requires clearly defined boundaries and solid input data.
Demand for "citizen developer" -level implementation. Automation is software development, and that requires relevant tools and techniques.
No-code, low-code, code: What is your experience as an automation developer?
Code. You can probably build some processes with low-code tools, but even that requires someone in your organization who can code the more complex parts.
In my experience, to build sustainable automation, real programming tools and techniques should be used. Dreaming of no-code automation leads to nightmares, I'm afraid.
Any advice for someone thinking of learning the ropes and becoming an automation developer?
Take it as a chance to learn something new!
Editor's note: Learning a stack such as Robocorp's ensures you learn skills that have high demand in the job market and that retain their value well. Begin your successful career at robocorp.com!