Flexiple Logo
  1. Home
  2. Blogs
  3. Tech Interviews
  4. Meet Rayvadera, Senior Software Engineer at Optum

Meet Rayvadera, Senior Software Engineer at Optum

Author image

Ekta Singh

Content Marketer

Published on Mon Jun 03 2024

Introduction

Hi Meet, would love to know a bit about your professional background. 

Hi, I’m Meet! I did my BTech from DAIICT Gandhinagar and after that, I went for my master's at IIT Guwahati. From there, I took up a job at Optum, where I've been working for almost three years now. Recently, I got promoted and I'm currently working as a senior software engineer. Most of my work in the last three years has been in the big data domain, along with a little bit of DevOps work that I handle in my current role. 

Day in the life of a software engineer

What does a typical day look like for you as a software engineer? 

Since the last few months, my work shift has changed because my entire team in the new project is based out of the USA. I'm from India, so my work shift is from 3:00 PM to 12:00 AM India time. Due to this shift, I start my day a little late. In the morning, I hit the gym and did some studying to stay updated with current tech trends. I start at the office around 2:00 or 2:30 PM, which is nearby.

My work usually begins around 2:30 PM, and the afternoons are relatively calm for me because my team is in the USA. All the meetings start at 7:00 or 8:00 PM. I finish most of my work between 3:00 to 7:00 or 8:00 PM. Then, all the meetings start, including scrum calls and working sessions with the entire team.

As a senior software engineer, I now need to lead junior engineers as well, so call durations are a bit higher than before, usually lasting around 2 to 3 hours. By 10:00 or 11:00 PM, I finish all my meetings and wrap up any pending work. I typically end my day around 11:30 PM or 12:00 AM.

How much time do you spend coding vs in meetings?

Nowadays, the time I spend coding has become much less, hardly 50% I would say. The other 50% goes into discussions like design discussions, guiding junior engineers, scrum calls, and planning the next product features. I need to participate in all these areas now.

What’s your mantra to get quality work done daily? 

I keep a list of all pending things because there are a lot of things that can't be tracked on Jira alone. We use Jira for Scrum, but apart from that, I keep my own checklist of things I need to do, prioritized by importance. Every day when I start my work, I go through that checklist and begin with the tasks that need to be prioritized.

Tech Stack 

With so many new tools popping up in the tech world every day, it can be hard to keep track! Can you tell us some specific tools that you swear by? Give us a peek into your tech stack.

1. Hardware Setup

We have been given a MacBook Pro and an external mouse. We haven't been provided with a desktop at home, but we need to go to the office at least ten days a month. At the office, we have desktops available, but I mostly prefer to use my MacBook. That's the hardware side of things.

2. Software 

A. Go-to browser

I'm currently using Chrome, but I also like Firefox a lot.

B. Core work and coding tools

As I mentioned earlier, most of my work has been in the big data domain. Spark is the main tool we use, and everything revolves around it. Our applications are hosted on Azure, so we use the Azure Databricks environment. Instead of using virtual machines and installing Spark, we directly use the managed Spark application provided by Databricks, which offers a very nice interface.

Apart from that, we use Scala, which is the recommended language for the Spark framework. We also utilize Kafka for data transfer between teams because it's asynchronous and scales very well, handling large amounts of data.

C. Favorite programming language

Java is my favorite. Even though I don't get to work with Java nowadays, it feels natural to me. Out of all the programming languages, I find Java to be very easy to use. 

Big Companies vs Startups

I noticed you've mostly worked in big companies. Do you prefer big companies over startups? 

In the current market situation, with a lot of turmoil in the industry, I would prefer to work in big companies rather than startups. However, when I was in college, I was hoping to get into a startup because, in the early years of your career, it's better to join a startup to gain valuable experience and kickstart your career.

At a startup, you get good growth opportunities, learning experiences, and the chance to see how a product is developed from scratch. If I were still in college, I would go for a startup, but at this point in my career, I would prefer working for big companies.

How would you compare startups with big companies? 

Currently, I'm working in a big company, and there are not a lot of opportunities for me to be part of meetings where large design decisions are being made or where the next strategy for the organization is discussed. Recently, I've been in a few of these calls, but not all of them.

In contrast, at a startup, you get to experience how the next strategy is being planned out and what the upcoming decisions will be. You get to be part of those meetings where your leaders are discussing, and your opinions are also taken into account.

These kinds of opportunities are more common in startups as opposed to big companies. In a startup, you have a greater chance of being involved in high-level decision-making processes and having your voice heard, whereas, in larger companies, such opportunities may be more limited, especially for those in the earlier stages of their careers.

Since we're on the topic of getting into tech, I'd love to hear your top tips for someone navigating their first 12 months in a role. Let's break it down into three parts: the ideal 1-month, 3-month, and 6 to 12-month period.

1. First month

If you're a fresher entering the industry, the first thing is to grab the basics of whichever tool or technology you'll be using.

Master the fundamentals, as it will make your life a lot easier going forward. You can skip the basics and get the work done, but you'll struggle in the future if you do that.

Secondly, don't hesitate to reach out to your seniors or even your manager. They might get frustrated if you ask too many questions, but you should do it because they were also freshers once upon a time. If you're making any mistakes, they can tell you if you're going in the wrong direction.

2. Next 3 months

Continue building upon the fundamentals you learned in the first month and start applying them to your work. As you gain more experience and confidence, start taking on more challenging tasks and responsibilities. This is also a good time to start building relationships with your colleagues and understanding the company culture.

3. 6-12 months

Now, suppose the first five or six months are done. At this point, you should start taking ownership of the modules because, after six months, your seniors will expect that from you. They've trained you and provided guidance, so they expect something in return.

You need to take ownership of these modules gradually, but eventually, you should reach a point where your seniors don't have to worry about that module anymore because you're taking care of it. This is also a good time to start thinking about your long-term career goals and how you can continue to grow and develop within the company. 

If you had to give a KPI to know that you’ve succeeded in each of these phases, what would those be? 

1. First month

For the first month, I can say that I would develop some small things for a POC (Proof of Concept). For example, we do a lot of POCs before changing anything in production. As a fresher, if you get a chance to do a POC, you should do that because it's an independent task and it won't impact production. That's one thing you can set as a KPI for the first month.

2. The next 3 months

For the next three months, start trying to push that POC into production, if possible. If you get that done, you will gain good visibility within the team and the organization. This can be a good KPI to set for yourself during this period.

3. 6-12 months

For the six to twelve months period, the KPI would be following up on whether you were able to successfully push the POC into production and take ownership of the modules you are working on.

Ownership is crucial at this stage, as your seniors will expect you to take responsibility for the tasks and projects assigned to you.

At the end of someone’s first year, what should their pitch to the manager be to ensure a successful appraisal, considering the KPIs you've mentioned?

First and foremost, keep notes throughout the year.

It's very easy to forget what you've accomplished over an entire year, so make it a habit to jot down your achievements and contributions every week or every two weeks.

This will help you remember all the things you've done when appraisal time comes around.

Secondly, highlight your growth. Show how you started from zero and showcase what you have contributed by the end of the year. Emphasize your progress and the skills you've developed along the way. If you have already taken ownership of certain modules or projects, make sure to highlight this to your manager, as they appreciate when employees take initiative and responsibility for their work.

When discussing your achievements, provide specific examples of how you contributed to the team's success. This could include any POCs you pushed to production, process improvements you implemented, or challenges you overcame. Beyond just listing your accomplishments, show how your work has positively impacted the team and the organization in terms of improved efficiency, reduced costs, or enhanced customer satisfaction.

Lastly, demonstrate how your individual goals and achievements align with the overall objectives of the company. This shows your understanding of the bigger picture and how you're contributing to the organization's success. By following these tips and effectively communicating your growth and impact throughout the year, you'll be well-prepared for a successful appraisal discussion with your manager.

Upskilling in Tech 

So you’ve been in the industry for over 3 years now - I’m sure you must have picked up new skills during this time. Can you tell me what was the motivation for upskilling and how did you go about it? 

I think that the periods in my career that have been the most productive - I've gone more by what interests me. 

My answer here is again divided into those two phases. 

1. Motivation

I genuinely enjoy learning new things, so if I get the opportunity to learn something for the first time, I would go for it. To be honest, I'm currently bored with the tech stack I'm using, and I'm looking for a change. If I get a chance to learn new things, I will grab it.

Apart from the joy of learning, there's also the advantage of being among the first to learn a new technology or skill. By doing so, you can overtake other engineers in terms of expertise, which can get you noticed by managers and leadership. That's a motivating factor for me.

However, at the core, my primary motivation is learning for the sake of learning itself. I don't necessarily need any other external motivation to pursue new knowledge or skills. 

2. Learning Approach

When it comes to actually learning, I usually start by researching the topic online, reading documentation, and watching tutorial videos. I also like to work on small projects or POCs to apply what I've learned and gain hands-on experience. If I get stuck or have questions, I reach out to the community or colleagues who have experience with the technology. It's an iterative process of learning, applying, and seeking guidance when needed.

For example, recently, we had to learn Kubernetes because one of the applications we were taking over was using it. When it comes to learning, most of the time, I prefer referring to the official documentation. Nowadays, the documentation for many products has become very comprehensive and detailed, which wasn't always the case a few years ago.

Kubernetes, for example, has excellent documentation that covers everything in detail. Since it's the official source, it provides the most accurate and original information. While there are many good YouTube tutorials available, they often use their own language and terminology. I prefer to read the documentation in the original language used by the developers who created Kubernetes.

Most of the time, I get to apply the new skills I learn directly at work. However, if I'm learning something for personal growth, I prefer to work on a project that utilizes that skill. If you don't apply what you've learned, it's easy to forget it quickly.

Qualities of 10x engineers

I'm sure you've come across your fair share of engineers often labeled as '10x engineers' in your career. What do you think sets these folks apart? Tell us qualities or traits you believe contribute to someone being considered a '10x engineer'?

In our company, I have observed that even if two engineers are equally technically sound, there is still a chance that one of them will get ahead of the other. This is because in a big company, it's not just about technical skills; soft skills also matter a lot.

And under soft skills - it's not just about communication; it's about taking the lead. For example, if you have been working on a project for one or one and a half years, and you start taking the lead, it will significantly impact your next appraisal. In our team, we experienced a situation where most of the senior engineers left, which provided an opportunity for someone to step up and take the lead. When such chances arise, you should grab them.

However, this doesn't mean you should neglect your technical knowledge. It's crucial to keep upgrading your technical skills continuously. But, in my experience, soft skills play a vital role in setting great engineers apart.

Some key qualities I've noticed in exceptional engineers include:

  1. Strong communication skills: They can effectively convey ideas, collaborate with team members, and communicate with non-technical stakeholders.
  2. Leadership potential: They are willing to take initiative, guide others, and make decisions when needed.
  3. Adaptability: They can quickly learn new technologies and adapt to changing project requirements or team dynamics.
  4. Problem-solving mindset: They approach challenges with a solution-oriented attitude and are not afraid to think outside the box.
  5. Continuous learning: They have a passion for keeping up with the latest industry trends and constantly expanding their skill set.

While technical expertise is undoubtedly important, I feel it's the combination of technical proficiency and well-developed soft skills that truly distinguishes great engineers in the workplace.

What advice would you give engineers to become 10x engineers?

If you want to take the lead and become a great engineer, you can start by helping other engineers when they face issues. Participate more actively in working sessions where people discuss the challenges they encounter or share new insights. Be a part of these discussions and contribute your thoughts and ideas. Even if someone is senior to you, if you are familiar with the work they are struggling with, try to offer your assistance. This shows your willingness to collaborate and support your team members.

As you gain more experience, start taking part in design discussions related to your project. Share your recommendations and insights on how things can be improved or approached differently. This demonstrates your proactive thinking and problem-solving skills.

To improve your technical skills, make sure to stay updated with the latest technologies and trends in your domain. Participate in coding challenges, hackathons, or open-source projects to practice your skills. Attend technical workshops, conferences, or webinars to learn from experts. Pursuing certifications relevant to your field can also help validate your knowledge.

To enhance your soft skills, consider taking on more responsibilities within your team, such as mentoring junior developers or leading small sub-projects. Volunteering for cross-functional initiatives that require collaboration with other teams is another great way to develop your communication and leadership abilities. Practice active listening and effective communication during meetings and discussions. Seek feedback from your managers and peers on areas where you can improve, and don't be afraid to participate in public speaking or presentation opportunities to build confidence.

Remember, becoming a great engineer is a gradual process. Start small, and as you gain more experience and confidence, take on larger responsibilities. Continuously learn, adapt, and contribute to your team's success. 

How do you think companies can retain these engineers? 

While monetary compensation is always a factor, I believe the culture of the team is equally important. If your team culture is not good, there is a high chance that your team will break down and people will start leaving. Creating a positive and supportive work environment is crucial for retaining great engineers.

Recognition also plays a significant role. I've seen a few senior engineers who were doing excellent work but were not getting recognized by senior managers and leadership. There should be some form of quarterly recognition program, and if not monetary, it should at least be verbal appreciation. Acknowledging and celebrating the achievements of your team members goes a long way in keeping them motivated and engaged.

When it comes to culture, empathy is the main thing that should be at the core of your team's values. If someone is facing issues in their personal life, there is a chance that their work will be impacted. While it's important to set deadlines and expectations, you should be empathetic when communicating with that person or in general. Showing genuine care and understanding towards your team members helps foster a strong sense of belonging and loyalty.

In my case, I feel valued and heard within my team, which has contributed to my decision to stay with the company. The promotion I received is a recognition of my hard work and dedication, but it's the overall positive culture and supportive environment that keep me engaged and motivated to continue growing with the organization.

Companies that prioritize creating a culture of empathy, recognition, and open communication are more likely to retain their top talent. When engineers feel that their contributions are appreciated, their well-being is considered, and they have opportunities for growth and development, they are more inclined to stay with the company for the long haul.

Negotiating salaries in Tech 

Negotiating salaries can be very tricky. Can you share what’s your typical approach to it? 

To be honest, I don't have extensive experience with salary negotiations, as I've only tried it once or twice. However, I would suggest leveraging your past experience and performance as a starting point. For example, I have three years of experience in my current role. If my last appraisal cycles have been good, I can use that information to negotiate and explain to them that if I stay with my current company, my appraisal cycle would likely be similar to the previous one. So, I would expect at least double that amount if I'm switching companies.

When you're changing companies, you're essentially getting out of your comfort zone and starting from scratch with a new project, a new culture, and everything. I would highlight this point to emphasize the value I bring to the table and the adjustments I'd be making by joining a new organization.

Additionally, if you have completed a master's degree, I would highlight that as well. Even if it's not directly related to your industry experience, there are still positive aspects of having a master's degree that can be leveraged during the negotiation process.

Lastly, I would emphasize my strong points, not just in terms of technical skills but also soft skills. Showcasing your communication abilities, leadership potential, and problem-solving skills can help demonstrate your overall value as an employee.

When it comes to researching salary numbers, there are various online resources and platforms that provide salary benchmarks based on factors like location, experience level, and specific skills. Websites like Glassdoor, PayScale, and Levels.fyi can give you a general idea of the salary ranges for your role and industry. It's also helpful to network with other professionals in your field and gather insights from their experiences.

Ultimately, the key is to have a clear understanding of your own worth, backed by concrete examples of your achievements and the value you bring to the company.

Be confident in your skills and experience, but also be open to negotiation and finding a mutually beneficial agreement.

Assessing Job Offers: Beyond Salary

How do you assess multiple job offers beyond just the CTC?  

1. Culture and work-life balance

If I had two offers and the CTC was similar or not a major factor, I would definitely look into the company culture and work-life balance. Although it can be challenging to get an exact idea of the culture since it often varies from team to team, even within the same company, I would still try to reach out to multiple people in those companies to get a better understanding of their experiences.

Work-life balance is another crucial factor I would consider. I wouldn't want to be in a situation where I'm working 70 or 80 hours a week consistently. So, I'd try to gauge the expectations around work hours and overall work-life balance.

2. Tech Stack

The tech stack the companies are using would also be a significant consideration for me. It's equally important as the culture because I want to work with technologies that align with my interests and career goals.

3. Career Growth

Determining growth potential can be a bit tricky, as it often depends on the specific team and project you end up working on. However, there are certain companies known for providing good growth opportunities to their employees, so I would definitely take that into account.

To assess growth potential, I would try to gather information about the company's overall trajectory, its plans for expansion, and the types of projects they typically undertake. I would also look into the learning and development initiatives they offer, such as training programs, mentorship opportunities, and support for attending conferences or workshops.

Additionally, I would reach out to current or former employees, if possible, to get their insights on career growth within the company. Understanding their experiences, the challenges they faced, and the opportunities they had for advancement can provide valuable context.

While it may not always be possible to predict growth with certainty, considering factors like the company's reputation, their investment in employee development and the experiences of others can help make this decision easier for you.

Assessing Job Offers: Promotion vs New Job

At some point, you or someone you know might have an offer for a new role outside your current company or a promotion internally. How would you decide between the two? 

1. Salary

In the current market situation, if I were getting a good enough hike, above the average, with my promotion at my current company, I would prefer to stay. Getting the same kind of hike might be harder at a new company. However, I would still evaluate all the factors before making a decision.

2. Tech Stack

If, by switching companies, I would get to work with a good tech stack or receive a significant salary hike, then I would definitely consider the new offer more seriously. But if the tech stack is the same as what I'm currently working with, I would think twice because I might not get the opportunity to learn new things, which is currently my priority.

3. Work arrangement

Personally, the location doesn't matter much to me. I would be comfortable with any location. Currently, I am working in a hybrid arrangement, and I'm quite satisfied with it.

However, I understand that work arrangement preferences can vary from person to person. Some individuals might prioritize fully remote work, while others may prefer a hybrid setup or even a full-time office environment. It's important to consider your own preferences and how they align with the options available to you.

So, yes. I think ultimately, the choice between a promotion and a new job offer depends on your individual career goals, priorities, and personal circumstances. It's important to carefully assess all the relevant factors, seek advice from trusted mentors or colleagues if needed, and make a decision that aligns with your long-term goals. 

The past year has been really tough for engineers facing layoffs. Did anyone in your circle get laid off in the last year?

Yes. A few of my friends and colleagues have gone through layoffs. 

Do you have any advice for an ideal job search strategy for someone going through a layoff right now? 

Firstly, I would advise them to be active on LinkedIn. You don't necessarily need to post anything, but keep track of what's happening in your industry and stay informed about potential job opportunities. Start connecting with managers from companies you're interested in. Many people often overlook this step and focus solely on reaching out to HR, but HR departments usually get a lot of inquiries, so there's a slightly lower chance of getting a reply.

On the other hand, if you reach out directly to a manager, the chances of getting a response and potentially scheduling an interview are much higher. When sending a connection request or message to a manager, make sure to highlight your past work experience and achievements. If there's anything particular in the job posting that aligns with your background or is your strong area, make sure to emphasize that specifically.

Additionally, I would recommend the following:

  1. Tailor your resume and cover letter to each job application, highlighting the skills and experiences that are most relevant to the specific role.
  2. Leverage your network by reaching out to former colleagues, classmates, or industry contacts who might know of job openings or be able to provide referrals.
  3. Consider expanding your job search beyond your immediate location, especially if you're open to remote work or relocating for the right opportunity.
  4. Keep your skills sharp by working on personal projects, taking online courses, or contributing to open-source initiatives. This not only enhances your technical abilities but also demonstrates your proactive approach to learning and growth.
  5. Prepare thoroughly for interviews by researching the company, practicing common interview questions, and having concrete examples ready to showcase your problem-solving skills and technical expertise.

Remember, even in a challenging job market, having confidence in your skills and consistently putting in the effort to apply and network can lead to securing a new opportunity within a few months.

Stay persistent, stay positive, and keep refining your job search strategy based on the feedback and insights you gather along the way.

Avoiding Burnout and Maintaining Work-life Balance

Given that you’ve spent a long time in this fast-paced industry - what strategies do you recommend for avoiding burnout and maintaining a healthy work-life balance?

1. On burnout

I think I was mildly burned out when it was a completely work-from-home model for my role. There were some months when I was hardly getting out of the house once or twice a week.

To avoid burnout, it's important to engage in some physical activity outside your home, like going for a run or hitting the gym.

2. On maintaining work-life balance

I have a few things I do to recharge. Previously, running used to be my go-to activity, but nowadays, with fewer grounds available, I've started going to the gym. However, even if it's not running or the gym, simply getting outside your home and going to a temple or a park can be helpful. The main idea is to make sure you're not constantly cooped up at home and that you're engaging in activities that allow you to disconnect from work and recharge.

 

Related Blogs

Browse Flexiple's talent pool

Explore our network of top tech talent. Find the perfect match for your dream team.