In the #WhatWeDoAtVMware series we will meet you with our colleagues from different roles and explain what they actually do. Today we are talking to Stanimir Todorov, Senior Software Consultant. Learn more about his role from the video:
What does a Senior Software Consultant do at VMware?
A Senior Software Consultant at VMware wears many different hats — we work with development teams and clients simultaneously, we participate in every phase of the software development life cycle and we have a deep understanding of the clients needs and challenges. Broad technical and consulting expertise is needed. We usually work on several projects, leading a team and mentoring junior consultants. The role is exciting, challenging and goes beyond the well-known definition for full stack development. I would call it a mega stack development since it includes servers, networking, storage, cloud, and many other technologies.
Something I value highly is that VMware encourages initiatives that come from us regarding tools and process improvement and gives us the freedom, resources, and time to do it.
You mentioned that you work with clients. Could you tell us more?
The Worldwide Center of Engineering is an organization within our company that provides professional services for enterprise clients to build extensive and complex solutions on top of VMware products. My responsibilities include gathering the clients’ requirements and preparing a solution design. Usually, we organize pre-sales sessions or workshops to assess clients’ needs, and then we provide a proposal and time estimation.
During the execution phase, I design, develop, or extend the needed functionality. All use cases that have been identified and agreed upon in the solution design proposal are brought to live. VMware products provide APIs that can be enriched with new functionality. Furthermore, they can integrate with external systems. During the development cycle we use various languages and platforms. Each solution should be designed and implemented with high quality in mind. Finally, the functionality is being tested.
Once all use cases are ready and tested, we build and deploy a solution package to the client’s environment. Then, we follow up with a knowledge transfer session to explain how the solution works.
Besides the solution development, our business relation can also include the provision of its support. If there are issues at any point, we immediately organize a troubleshooting session to solve the problem.
What are some critical skills to be successful as a Senior Software Consultant?
Every Senior Software Consultant should have creative thinking – being able to think both conceptually and practically, and excellent problem-solving skills. They have to be able to communicate clearly and empathetically. The working environment is dynamic, that’s why self-organization and excellent time management is critical to the role as well.
What are you working on right now?
A big project that runs a couple of years. We are working together with Telco Company to build a Private Cloud Project. The solution utilizes an extensive list of VMWare products such as VMware Aria Automation, VMware Aria Automation Orchestrator, VMware NSX, VMware Cloud Foundation, vCenter, VMware Aria Operations, and many other VMware products. We are using Build Tools for VMware Aria to develop an easy integration and automation for cloud infrastructure.
Tell us about your career journey to date?
It is important to start gaining experience in the software industry as early as possible. I started as a backend engineer in my second year at university. Then, I switched to frontend development and later had the opportunity to lead various teams to build end-to-end solutions. At the beginning of 2020, I took a big step to further develop my skills and knowledge. I joined the Worldwide Center of Engineering at VMware.
Lately I discovered that tutoring is an extraordinary journey. I lead the Upskill React Program in Telerik Academy. It is an extensive program, which covers React as well as programming fundamentals. My primary motivation is to share my knowledge and best practices on how to use React to build applications. Meeting motivated people during the programs is another driver for me.
How do you keep yourself in the loop? What are the channels you follow for your professional interests?
To stay relevant and improve myself I keep learning and augmenting my skill set. I try to devote part of my time to study new things, revise conceptions, and experiment with them. I spend time reading technical books and blog posts. I find it quite useful watching videos and courses on certain topics.
Being a trainer is a great way to be acquainted with new trends. Furthermore, you are deepening your knowledge in conceptual topics.
A piece of advice to the aspiring software engineers?
Invest in yourself! The software industry is evolving rapidly, that’s why continuous learning and constantly improving your skills are essential.