CodeRiders’ Artur Ter-Stepanyan Shares Compelling Insights About His Software Outsourcing Projects

Group-46251
CodeRiders
  • Date Published
  • Categories Blog, Interview
  • Reading Time 12-Minute Read

Artur shares his experiences working on Scrum projects and how it feels to be a software developer in a famous tech hub country.

Software developers and engineers hate talking; most of us have heard this phrase at least once. But whether it’s true or not, we do need opinions directly from professionals. No one can share more in-depth insights into the software development process than developers and engineers themselves.

CodeRiders continues its interview series with our leading software developers and engineers. Earlier, we shared our employees’ journeys in IT along with their technical and soft skills as professional remote software engineers.

This time we proceed with our full-stack software developer, Artur Ter-Stepanyan, who shares his opinion about software outsourcing management, Scrum teams, and his favorite projects.

About Artur Ter-Stepanyan

Artur is a senior software developer at the CodeRiders software development company. He is one of CodeRiders’ best alumni, having formed the core team in 2016.

If you have been following CodeRiders for a while, you may already know that CodeRiders entered the international IT industry as a local software development school back in 2013. In just a year, the school gave more than 800 alumni, 17 of whom formed the CodeRiders software outsourcing firm in 2014.

Artur has contributed a lot to CodeRiders’ international recognition as one of the best software outsourcing companies on the market. He has worked with his colleagues on some of the most challenging and complex software outsourcing projects. Artur is one of our hard-working software developers who has earned positive client reviews for our company. He has also been active in representing our company during various events – the latest one has been the Hannover Messe 2022 International Trade Fair in Hanover, Germany.

Let’s start at the beginning!

Hi Artur. Thank you for taking the time to talk with us. Let’s start with some background information about yourself and your journey to becoming a successful software developer. How did you end up at CodeRiders?

Hello. Thanks for the offer. I think many Armenian software developers would relate to my story. I have already been working in the IT industry for 7 years, but becoming a software developer was not my childhood dream, and neither was software development my major at university. As a regular young adult, I was interested in many random professions, including medicine and healthcare. I wanted to choose a profession that would genuinely interest me. At the end of the day, it is what you are going to spend the most of your time on. However, I also did not forget about the average salary for certain professions and their environments.

By the time I was looking for such a perfect career opportunity, my brother worked at CodeRiders as the director of the business development department. The company’s founder and CTO is my brother’s childhood friend. So, the company was already heart-warming for me. He suggested I enroll in their PHP, Laravel, and JavaScript courses to see if programming would interest me. In the mid-2000s, the tech industry was already blooming in Armenia. A vast majority of promising new graduates chose professions such as software developers, engineers, architects, testers (QA specialists), PMs, and digital marketers, and the IT industry was very strong and filled with a million opportunities. Armenia was on its way to becoming the world’s next tech hub.

So, I decided to try it, and as you can see, it was an excellent choice. I found myself in software development, and the team was a perfect match for me. After successfully finishing the software development school, I was hired as a back-end software developer in 2016. CodeRiders is my first and only workspace. We have created an atmosphere where the phrase “I am just an employee” is not suitable. We all honestly care about the well-being and reputation of the company, and it is amazing how far we have come from being just a small startup to an internationally recognized software vendor. I know that finding an ideal workplace on the first try rarely happens, so I appreciate it a lot. I think my personal success, as well as the company’s success, is strongly connected with our vision and dedication. We are like one big family that has gathered for a clear mission to help people work more productively and have fun.

You mentioned that the team is like a family to you. Doesn’t this fact create a “loose” environment for work and discipline?

Many believe that being friends with your colleagues or having close connections at work harms business/work productivity. I will not argue with that because cases differ. However, at CodeRiders, this is more like an extra stimulus to work better. With CodeRiders, I am myself. I am not under any duress, nor do I feel the need to show off. As a result, I just concentrate on my job and do what I do best: coding and software development. Good results and positive client feedback prove the efficiency of my work.

Please describe your typical working day at CodeRiders.

We start with a cup of coffee, of course 😊. If it is Monday, all team members, including the business development department, gather for a morning meeting. We share what we are doing and make sure everybody is on track. Then everyone starts working.

We all work in several big comfortable rooms. We do not have separate rooms, which is great in my opinion, because working together somehow releases stress. For example, during a hard-working day, one of our team members may crack a joke, and everyone laughs and continues working.

We also have separate rooms for discussions or video calls. So, if we need private space and silence, we can move to those rooms. For us developers, this usually happens in the mornings and evenings when we have calls with a client and the remote software development team. We may also have several coffee breaks when we can just talk about different topics, chill, and refresh our minds. CodeRiders offers a hybrid working model, which means that employees are free to choose between working remotely or in the office. I prefer in-house work because I enjoy being around my colleagues (my brother and close friends), which helps me operate even more productively.

Will you discuss your current project in more detail?

I currently work on an all-in-one sports management platform. Its main target is to streamline sports club organization. It is one of the leading sports management platforms on the international market. We automate the management of any sports club. Anyone can participate and encourage their local club from anywhere in the world. The product is like having an entire administrative team in your pocket. It helps the user easily manage their club anywhere and anytime on all of their devices. I work with remote software engineers and developers from almost every continent. We have several project managers who work closely with all the tech team members and the client.

What do you like the most about your current software development project?

Besides the fact that the project is big and never bores you, I enjoy our working process and methodology. We use the Scrum software development methodology, which is perfect for such a complex project. Scrum is the most popular Agile framework and, of course, follows the 5 principles of Agile: commitment, focus, respect, openness, and courage. In general, iterative software development models are very flexible and “change-friendly.” You do not have to stick with the plan. With Scrum, you can still succeed in software development and implementation even if you do not have the final product version in your mind. In the meantime, unlike fixed-price software models, iterative software outsourcing methodologies ensure the client pays only for the committed work.

Describe your typical working day within this project. What does it mean to be a full-stack developer working with an international team?

Our team consists of project managers, back-end and front-end software developers, engineers, and testers. The project managers break down the work into sprints, and we cooperate closely to complete and test each sprint after moving forward. So, the software development process and timeline look like these:

  1. We start with sprint planning. Each sprint begins as follows: The software developers, engineers, and product owners discuss which product backlog items (PBIs) should be included in the sprint. The product owner is responsible for prioritizing the PBIs for a specific screen. However, we are also encouraged to share our opinions, thoughts, and concerns about the decision, which is great. In the end, we agree on a realistic sprint goal and backlog.
  2. The daily Scrum includes daily meetings, which are 15- to 30-minute calls when we check in, share our progress, and review our activities for the day.
  3. We continue with sprint reviews: at the end of each sprint, we have an online meeting with the management team and show our final work. The management team goes through the working features that were implemented during the sprint and gives feedback. The feedback is incorporated into the product backlog, helping us prioritize better during future sprints.
  4. The final step is the sprint retrospective. This is the time when the Scrum team reviews the things we should improve and offers improvement methods for the future. We collaborate and plan our next step accordingly.

As much as you like the Scrum methodology, are there any drawbacks in your project that you would like to fix?

To be honest, I sometimes feel that we waste time. I like talking and ensuring that all the team members are on the same track. This, of course, is the key to success. However, sometimes some calls or chats are unnecessary, and we may spend more time discussing an issue than actually working on a project.

What does it feel like to work with foreigners? Are there any cultural differences?

Of course, the experience is very different, and it is natural. We live in different environments and have different habits, mindsets, and mentalities. We sometimes do not get each other’s jokes. However, this is not a big deal and does not harm our working process. Indeed, this is a matter of time. The longer we work together, the better we understand each other’s local culture. Anyway, with all these differences, I still enjoy working with professionals from other countries. This makes work even more interesting.

How important is good project management for a software developer?

Project management is critical. A project is likely to fail 90% of the time if there is no transparent communication between the client and team members. A solid understanding of responsibilities is a must for a project’s success.

I have worked on projects that have had and haven’t had project managers. In the first case, I smoothly and easily communicated with my fellow software engineers and developers. The tech team sometimes had a hard time communicating with non-technical team members, but it was a matter of time. This also depends on a software developer’s experience working with non-technical people. If the software developer is skilled in working with non-technical staff members and understands their logic, communication is simple and less time-consuming. Otherwise, they may take a minute but again they will get back on track. Small and simple projects do not even need project managers. However, I won’t underestimate the role of project managers in small projects. Of course, they manage cooperation in more professional and beneficial ways.

Which languages or tech stacks would you like to learn in the future?

I am currently exploring Unity. It is a cross-platform game engine. It is very popular, and you probably already know about it. Unity supports a variety of mobile, console, desktop, and virtual reality platforms. It is mostly used for iOS and Android game development and is especially popular for indie game development (independent video games).

One of the primary advantages of indie publishing is that it is available to a large number of people. For example, individual software developers and engineers or small software development teams can create their games without technical and financial support from big game publishers. I play around with the Unity engine to create 3D and 2D games, interactive simulations, and other exciting stuff.

CodeRiders is your first and only workspace. This does not happen often. Why is that?

I do not have a previous workspace to compare with CodeRiders, and I have never thought of leaving it. This already means that it is a unique workspace. I have witnessed this company’s growth from a small startup to an established, internationally recognized software vendor. I trust and appreciate my colleagues because we are responsible for the company’s high reputation. I believe in the CodeRiders’ software development company and its vision. I also have a family member and most of my close friends among the staff, so I think these three make a solid summary of this question.

Let’s end this interview with some information about Artur as an individual. Your hobbies and interests?

Well, I enjoy sports, especially football/soccer. I also enjoy playing video games.

Thank you, Artur, for taking the time to speak with us. I think you shared a lot of useful information with our audience. 

If you need talented software developers and engineers like Artur, do not hesitate on sending us a quick message here. We are also open to free discussions. Leave us your message and one of our business development team members will get back to you within a working day.