Maria, Software Developer

Maria and I extend our lunch break and start our conversation after the vegan meal in the communal kitchen. We are still surrounded by the smell of freshly cooked food, as we work very hard every day to prepare meals together.
Hello Maria. Is it correct to assume that sustainability doesn’t just seem to be important to you in your day-to-day work?
You’re right about that. I volunteer privately with Anima e.V., which raises awareness about livestock farming. This topic is closely linked to sustainability, as the use of resources, environmental and climate protection are important topics in agricultural discourse alongside animal welfare. These topics are very close to my heart. With our association, we go to schools, organize educational offers and also organize the vegan summer and winter markets. The money raised is then donated to farms and other animal welfare organizations.
In general, I’ve been trying to raise awareness of the issue for over 12 years, I’m part of demonstrations and enjoy talking directly to people.
Then it certainly suits your basic attitude that we at TRICERA also attach great importance to the sustainable use of resources that are already in use.
It motivates me to be part of a “movement”, just as it does in my private life. I think it’s great that it’s important to my employer to conserve resources. The approach of using 1st and 2nd life batteries and thus giving battery modules a second life was a decisive factor in my application to TRICERA. The fact that we as a company have been able to build up expertise and a USP here since the company was founded is of course a good sign.
Your path to TRICERA was not stringent, you made a successful career change.
I completed a teacher training course in mathematics and German at grammar school level and realized during my traineeship that it wasn’t really suited to me. The course has little to do with the profession, as a lot of emphasis is placed on in-depth technical understanding. However, it does provide knowledge that can be used for other professional fields such as software development.
After a short orientation phase, I continued my training as a software developer at the beginning of 2022. In addition to basic aspects of software development, database design and the programming languages C# and C++ were part of the training. I noticed from other participants, who already had several years of experience in the industry depending on the course, that I had learned problem-solving strategies through my studies, which even gave me an advantage over them in some respects. Of course, experience is also an important point in this profession, and I was able to gain this at TRICERA. I’ve been here for 2.5 years now and am very satisfied.
Now software is not just software, it is very complex. Do you divide up the areas of responsibility within the team?
The software at TRICERA is roughly divided into two areas: One part of the team is primarily responsible for network technology, i.e. providing the infrastructure so that devices and various parties can access the network and communicate with each other, for example. This team also fundamentally ensures, for example, that the code we write and the programs we use can be uploaded to the server and updated, takes care of various security aspects of the storage and performs other tasks that I can’t list here. I would describe this part of the software as the interface between the physical system and the code.
Then there is a second part of the team, to which I belong, which provides the code as a basic task. This means that we implement interfaces between the devices and the parties that are part of the control system, such as the battery inverters and the marketer, and provide logic that processes measured values and specifications according to the requirements of the project and passes the resulting values on to the devices and other parties. Setting up and maintaining the database, visualizing it for us and the customer and commissioning various devices are also part of our remit. We also carry out tests and support the O&M team in monitoring and analyzing the behaviour of running systems.
What exactly does your work in the code look like?
My colleagues and I regularly develop the code further to improve its performance and integrate new features.
One example of this is when a new type of inverter needs to be integrated. In consultation with other departments, we first look at which device is best suited to the requirements. Once this has been determined and I am given the task of integrating this inverter, I first have to look at what functionalities and information it provides and how I can integrate this into our existing logic. Then I write an interface in the form of code. This is like a building block that connects the device and our logic. On the one hand, this interface must enable the exchange between the device and the rest of the system so that, for example, a switch-on command arrives at the right place and, on the other hand, it can also contain logic itself, i.e. trigger reaction B to information A and then return result C. Tests are then also written for this code to ensure that it works well, including in conjunction with the rest of the logic. The code is then uploaded to a shared platform and explains what was done and why. Another person from the team then reviews it, suggests changes or gives the “ok”. If new code ends up in the complete work of art, at least four people have previously reviewed it.
But developing code is only part of my job. In the example just mentioned, I would also make sure that the settings on the inverter are configured correctly, contact the manufacturer if necessary to clarify any questions that arise and write documentation to record this knowledge.
Is there a routine, a daily work routine?
Not everything can be planned. Nevertheless, there is a certain rhythm. At the beginning of the week, there’s a meeting where we look at the week’s goals, take a look at the previous week’s tasks and clarify external appointments, such as assignments on systems for which the software’s help has been requested. Then I dedicate myself to the task at hand, such as writing code, creating configurations or documentation.
Every now and then I have to reprioritize, because some requests have to be processed quickly. For example, if a system issues a warning, I’m asked to clarify and rectify the cause or help prevent an error. There are also requests from customers or other departments, which are then answered in addition to the planned task. That’s why the day sometimes turns out differently than expected and you have a lot of variety.
Are there any developments in software that you are actively aware of?
There are of course constant changes and developments in the software sector. On the one hand, there are updates to the programming languages that we use, so that they are constantly becoming more flexible and more powerful. We also use open source programs, adapt them to our needs and integrate them into our product. These are also subject to constant change, as they are publicly accessible and are therefore worked on by many developers. Artificial intelligence (AI) is currently a major topic in software development; we now also use these for our day-to-day work. We use the GitHub Copilot tool, which is an AI-based assistant that can be used in a variety of ways. For example, you can use the assistant to quickly transfer variables that are used in the interface explained earlier, which you more or less have to type out and only modify slightly.You can also have it explain the reason why a part of the code does not work as desired or have it suggest code.However, you have to be very careful, as the answers are not always correct and are not necessarily the best solution.Another application point is the review of the code, which is also mentioned above, before it can be transferred to the overall construct.The prose explanation of what this code does can also be taken care of by the AI, making the checking process more efficient.
Do you continue working at home on your own computer or what is your balance to your working day?
I go roller derby. It’s a sport where you’re on roller skates and try to stop your opponent from doing laps. I’ve also done kickboxing in between. In general, I prefer active things to balance out the relatively sedentary, less physically demanding work.
I also use my computer to play games from time to time. However, this is sometimes too strenuous after work if you’ve been sitting in front of a screen for 8 hours beforehand. This is usually limited to the weekend.
Finally: Who do you nominate and why?
I nominate Alexandra. She is part of the administration team and clears up a lot of general issues for all of us. She also has her dog Eddi, who brightens up everyday office life.It’s worth getting to know the two of them.