Transforming software development in the age of AI

Share Content

Listen audio version of this post:

Transforming software development in the age of AI

Contact Us → Contact Us →

Marko Jaanu, Head of Technology and Advisor at Siili Solutions is the driving force behind training over 400 Siili employees in Generative AI, and also the person responsible for Siili's integration of AI tools across various developmental stages. In this interview, we pick his brains on AI and how it's changing software development.

Among other things, Marko talks about leveraging AI to enhance workflows, Siili's strategic collaborations with tech partners like Microsoft Azure and AWS, and the future of employment in an AI-dominated landscape.  

Michal Wlosik: Hi Marko. Siili Solutions has recently hired the AI Principal. Can you provide more context about why the role is needed and what it involves? Is this much different from what you are doing right now? 

Marko Jaanu: To give a broader context here, we need to sort AI into two different categories. There are custom AI-based solutions, meaning we create solutions where AI is part of the solution. But there's also the other part where, as a company, software developers should use AI tools in our daily work, starting from design and concepting to planning, managing, implementing, and testing the entire process. The principal’s role will encompass AI tools and how we'll do software development in the future with AI tools. 

Creating the AI Principal role is our way to do more of what we're already doing. And there's a lot to consider, like deepening our collaboration with partners such as Microsoft Azure, AWS, and GitHub. This is particularly related to software development AI tools. 

Also, the tools are crucial for creating solutions and digging deeper into the software development workflow. We're addressing the design, implementation, and testing aspects with AI tools and exploring how to visualize and texturize the flow from end to end. 

The strategy and practical implementation of how we do things have started, and the enablement has begun with training from the bronze level to the silver and then the gold level, where we use these AI skills and solutions. 

AI solutions are part of our delivery, but we need to explore more on how we use large language models in software development and in our solutions. We aim to create cloud-native solutions, so we need to understand how large language models and AI, in general, are used in these environments. We are also expanding our resources, with many people involved in the AI transformation process. They bring different perspectives and can discuss with customers or clients. 

Michal: Are you the person verifying and approving the use of new AI tools at Siili? 

Marko: First of all, you have to ask for client approval for new tools. There could be several reasons for clients not approving to use AI tools at the moment, and we are working with clients to understand the rationale behind these. At Siili, we have a process of submitting, evaluation and approving the AI tools in use either internally or in client assignments. Generally, we can use any tools approved internally if we don’t disclose proprietary client information. But eventually, when doing client work, the client has the final say on tool approval in their assignments. 

Michal: There seems to be a complementary relationship between humans and AI where AI brings the necessary capabilities to increase performance, but still human insight is needed. How do we balance this? How do we make sure we don't lean too much towards one or the other? 

Marko: This is an interesting question. Everything starts with competencies and the way we use AI in our daily work and in our solutions. We need to understand how we could use AI as part of our work and what are the ways of doing so. We also need to consider the legislation behind AI usage and the ethical aspects. Our people should be trained to work with AI. 

We have already started with a three-level training plan. When we bring AI into our work, traditional software development practices should be in place to get the desired results. Decision points, when needed, must be handled by humans for example related to legislation and health related issues. You cannot give AI the possibility to make essential decisions itself. 

Michal: There is a common belief in the market right now that it's becoming extremely hard for juniors because of AI. The tasks that were originally suitable for junior developers can now be automated by AI. What's your opinion on that?  

Marko: It's a two-folded question. For juniors, it is even easier to get involved with software development tasks and create solutions. You can create solutions from scratch with basically no knowledge at all. You just describe to the AI what you need, and you can combine things into one solution and get what you wanted. However, the efficiency and quality of the end solution are not at the level you'd expect compared to if done by an expert. I believe it's also changing. Someone still has to teach language models. Is it commercial work or community work on these language models? I don't have a prediction on that, but someone has to do it. There is an example here in Finland that prisoners are teaching Large Language Models. Will we eventually end up in a situation where AI can teach itself? At some point, I think we will, but now it's taught by automation or humans. This is how we act, this is how we do things, and then the language models are learning from that.  

On the other hand, if you get practical, repetitive work and the middle-level coding roles covered by AI, experts are still needed for the bigger picture, to understand how digital solutions are made, how to put things together to create the end solutions efficiently and with quality. 

Michal: When I think about language models and the way developers use them, is it like a glorified and supercharged version of Stack Overflow where the language model has consumed all the content from Stack Overflow and it just predicts what should be written next? Or does the model have a deeper understanding of the language structure? 

Marko: Large language models are taught with information from the Internet, and OpenAI and Stack Overflow recently announced a collaboration. But then we have to remember that the information on the Internet is just like a consensus of things. There's incorrect information, correct information, and everything in between. Like with everything, bad code can teach a language model bad habits. 

In other words, it is an iterative process. If you teach the language model with some information, and then you use that for problem solving and then you use that information again, teaching the large language model. And then you just ask again, and it's iterative in the sense that it goes towards the middle, or the “consensus” of things. 

There has to be some kind of mutation. You need a force or mechanism to feed in some non-systematic data to get different kinds of answers instead of the average or same outputs all over again. But that's something, I think, OpenAI and these other companies are addressing now. 

And then, if you think about Stack Overflow and OpenAI, human beings are still commenting and giving the best practices there. So, you get new information in there. The future isn't going to happen in a way that you just have AI teaching AI without any new knowledge or information being fed into the system. 

Michal: How to make sure you aren't overly influenced by the hype around some AI tools and solutions. Everyone wants to develop some kind of AI or integrate AI, but maybe it shouldn't always be the case? How do you ensure you have a good understanding of the benefits behind AI and ensure we don't overpromise to a client when offering AI solutions? 

Marko: The starting point is training and education. Consume all the information you have at hand and then create your own understanding and opinions. The next step is to collaborate and reflect with others to see how they view things and to refine your own thinking and create new growth. A little further down the line, you experiment by using and creating proof of concepts and demos and eventually practical solutions. Start using those tools, see the results, and always have some measurements ongoing to see how things are changing and what they bring to the table. 

Michal: So basically, faster ideation and prototyping and probably, as a result, failing faster and then trying something else. 

Marko: Yes, and always keep in mind the problem or the need you are trying to solve with the new way of using AI. What value does it bring to the client? How does it improve output, quality, productivity, or efficiency on the client side? And in the long run, you need to ensure that the development practices you have in place remain robust. The feedback loop and validation and testing will become even more important in the future. 

Michal: In a way, I think the whole market has shifted focus to AI. Is there a way for Siili to differentiate? What makes us different from other AI-powered service providers? 

Marko: It's about continuing to do what we do best: understanding the client's needs and creating solutions efficiently. We learn continuously with our clients and create solutions together. And we're not just preaching; we are transforming our own operations.

We keep up with the pace of change, absorbing the latest from industry giants and partners like OpenAI, Amazon Web Services (AWS), and others, and we incorporate those into our practices. We don’t just wait; we actively engage and innovate. 

Michal: At Siili Solutions, our pitch is that we are not just another company that helps you integrate AI. Rather, we are AI-powered ourselves and we are showing it. What kind of opportunities does Siili provide for our employees who are interested in AI? 

Marko: We discuss and share information through info sessions and collectives for example. We've set up three-level training courses, from mandatory learning to advanced hands-on levels where the real work with AI is done. We are also evolving the roles within Siili to include AI specialists, large language model experts, and more, reflecting the shift from repetitive tasks to designing systems and architectures that leverage AI. 

On top of that, we have many other interesting initiatives going on. For example, there is the AI-Powered Coffee Break event every Thursday where we present interesting use cases of AI tools, we also run a bi-weekly AI-Powered News Round-up on LinkedIn that gathers all the recent developments in AI. And, of course, there are ambitious AI projects going on at Siili. So yes, we are becoming truly AI-powered. 

Michal: What specific roles have emerged within Siili since the AI revolution? It sounds like AI, automation, and data-related roles are being transformed by AI. 

Marko: Yes, we've seen a transformation from traditional automation engineer roles to roles that heavily involve AI, such as AI engineers and generative AI specialists. The data aspect remains crucial, and we ensure it is governed and accessible for AI applications, which changes the landscape for data-related roles as well. Data spaces is one example of these new approaches. 

In the age of AI, data is more important than ever, as AI changes solution architectures and implementations. We need robust data governance to ensure data is in the right format for AI solutions, and we need to validate and test AI-based solutions to ensure they deliver the correct outputs. 

Michal: Can we use AI tools in a project if the client denies using it? Or is there an imperative to push AI at any cost? 

Marko: We should have an extensive discussion with the client to explore when and how AI tools can be used. It's not just a consultant's role but also that of account managers and project managers to engage with the client and remove obstacles. There may be legislative or security issues that need addressing, but there are ways to use AI tools without compromising client data, like how problems are defined now in Stack Overflow without disclosing sensitive information. 

Michal: What advice do you have for young aspiring developers or people making their foray into the IT industry? What skills are important to learn in the coming years? 

Marko: Understand the basics of how software works and how solutions are made with software, it has not changed. Knowledge of data management, cloud services, and system integration is also crucial. Also, learning to use AI tools to enhance your coding and productivity is important. The coding languages aren't going away: they're just evolving. Understanding them is still essential but it is no longer enough. Human-friendly coding languages may not be necessary in the future. That's an interesting thought. We might soon just end up describing what we want from the AI, and it could generate the code itself, potentially moving towards using simpler, more efficient coding systems directly, even as far as assembler code. 

Michal: So, it's like building functions and whole programs to perform specific tasks, much like what we see in platforms like Zapier. 

Marko: Exactly. Let's see how quickly that development happens. It could be in five years or fifty, depending on various factors. If AI will take over software development from humans, do we need any modern coding methodologies or human understandable coding languages like JavaScript, java or Python at all? Can AI use just assembler to code any systems? Time will tell. 

Michal: Thanks for the interview, Marko. Have a great afternoon. 

Marko: Same to you. Thanks! 



Related Stories

Spiking Now

Get Our Latest News

Immerse yourself into the latest twists and turns of life at Siili! Subscribe to our monthly newsletter, and stay up to date with our stories.