Podcast: Play in new window | Download
Subscribe: Apple Podcasts | Spotify | TuneIn | RSS | More
Welcome to episode 210 of the Nerd Journey Podcast [@NerdJourney]! We’re John White (@vJourneyman) and Nick Korte (@NetworkNerd_), two Pre-Sales Technical Engineers who are hoping to bring you the IT career advice that we wish we’d been given earlier in our careers. In today’s episode we share part 1 of a discussion with Shailvi Wakhlu. We’ll talk through Shailvi’s early experience as a developer, her love for coding, a shift to focus on data, and her experience as a tech lead and business owner who eventually went back to life as an individual contributor.
Original Recording Date: 01-17-2023
Topics – Meet Shailvi Wakhlu, The Development Life, Mentoring and Education, Engineer and Full Stack Developer, A Forced Decision, Realities of the Analyst Role, Tech Lead to Manager and Owner, A Business Sunsets
4:28 – Meet Shailvi Wakhlu
- Shailvi Wakhlu (she/her) is based in San Francisco and was most recently a senior director and head of data at a sports tech company. During the time Shailvi was there, she ran a department of 27 product analysts and machine engineers.
- Shailvi recently left that job to take a break and see her family in India after not being able to visit home for a 3-year period due to COVID. After the 3 years we’ve all had, the visit was much needed.
- At present she is interviewing with multiple companies for VP of Data roles.
- Nick listened to this episode of Teach the Geek featuring Shailvi to prepare for today’s discussion. It’s a great episode to go learn more about Shailvi’s public speaking experiences.
- Special thanks to Neil Thompson for making the connection to Shailvi!
5:28 – The Development Life
- Shailvi trained as a computer engineer in college. Coding was a basic skill needed for software engineering jobs. Shailvi’s first job was titled web engineering, and then after moving locations it was changed to software engineering. Coding was the skill the company wanted for those who were being hired in this type of role.
- Many companies have a specific language in which they expect candidates to be competent, but even more important according to Shailvi is being able to break down problems into component parts is something used in every developer job.
- Being able to estimate project timelines and costs are important skills for the would be developer (i.e. knowing what it takes to get something completed).
- Communication is also important for the developer. You have to update people, give them some idea of what you are doing and how you are doing it, and how you actually get things accomplished.
- Shailvi says being able to articulate (on a resume) not just the experiences you’ve had but also what you have learned from it is very helpful.
- Shailvi has seen candidates be successful when they not only described the project they worked on but also how they went about doing it.
- For those looking to break into development or who may be fresh out of school, the ability to take something that is somewhat ambiguous, come at it from a customer perspective, and get to a solution can be demonstrated on your resume. And this is a distinguishing characteristic Shailvi looks for in candidates.
- Shailvi says demonstrating experience solving a problem in a different language than a company may have on a job description is still helpful. She would hesitate to discount experience in another language because though there are syntax differences between programming languages the basic concepts remain the same.
- For senior level roles you may need multiple years experience in a specific language, but for something entry level, experience in a specific language is not required (assuming you have some relatable experience from using another language).
- Most good companies tend to look for buckets (or groupings) of languages and for candidates to have experience in at least one of them. They do not expect you to know everything about what they need for a specific job.
- Nick says this is analogous to a compensation range but for programming languages (i.e. a range of languages) and would likely lead to more strong candidates as a result.
- Shailvi says it is important for companies to list multiple languages in the job description, especially those closely related to what they are looking for.
- When Shailvi was a PHP developer, she would search for those keywords, for example. If a company listed Python or Perl in the job description, she would not landed on the job in question because it did not match her search terms. We also know that applicant tracking systems are looking for keywords in resumes as a way to filter candidates.
10:48 – Mentoring and Education
- Shailvi is big on mentoring.
- She has volunteered at a local middle school to teach students math in the past.
- Shailvi has also taught coding students ranging from middle school to those right out of high school.
- Shailvi is very interested in the questions young people ask regarding what her job is like.
- Some young people even want to know how much Shailvi gets paid in her line of work. Young people want to know which jobs are going to pay well and get them the lifestyle they want.
- When we say lifestyle someone may want to be able to travel frequently or stay close to their family and would prefer a remote job. For those who love learning, they may want to find a role that will require them to keep learning year after year.
- For the example lifestyles we discussed, software engineering is a great option. It has creative aspects and learning aspects. Shailvi feels there is something in it for everyone.
- Shailvi loves to code, and she finds it to be like solving puzzles. She grew up on detective stories and was fascinated with being given a problem and being able to get to a solution in multiple ways.
- Having creative control of solving a problem was exciting to Shailvi, and she enjoyed the coding lifestyle.
- Shailvi enjoys coding so much that even now, despite not getting a chance to code much in her current job, she will still dedicate time to do it now and then.
- Many people think when they move up or into different roles they have to leave everything behind. Shailvi is an example that we can still take time to do the things we enjoy.
- Even if not coding for part of our day jobs, we can still find time to code in our free time.
- Shailvi not only enjoys coding but seeks to keep the skill of coding current as much as she can.
- Shailvi has been focusing in Python as the language she works with in her spare time as it is finding more usefulness in the data space where she works. A few years ago she had to make a decision between Python and R, and at the time she chose Python.
- Shailvi feels many other in the industry made a move toward Python as well, and though she learned Python long ago, she tries to stay on top of new use cases and applications of it (always something to learn).
- Each company has their own perspective on value of a degree compared to a boot camp for incoming job candidates.
- As a hiring manager, Shailvi likes to look at the totality of the experiences someone is able to bring.
- She has a lot of respect for people who want to learn a new skill like coding to change careers or learn something they were not taught in college.
- Shailvi may not be in a position to put these candidates in a senior role based only on their experiences before acquiring coding skills.
- Remember it isn’t just about being able to code.
- While coding is something you can certainly be taught at a boot camp, but hopefully through your other experiences you have picked up skills that can add to your journey as a software engineer / software developer such as…
- The ability to explain what you are doing
- The ability to understand problems and care about the solutions
- The above are typically not something a boot camp will teach you, but they are things other life experiences and other jobs will teach you.
- What about apprenticeships?
- Shailvi has not known many people who have taken this path but has heard about it as an option. She has heard of specific companies offering specific learning paths.
- As a concept it does sound like a very interesting option.
17:10 – Engineer and Full Stack Developer
- Shailvi tends to use the terms software engineer and software developer interchangeably. When she worked at her first job some folks had the title of software engineer and some software developer. But no one seemed to know the difference.
- Shailvi believes there used to be some difference in educational skillsets, but if there is a massive distinction she has not seen it.
- When she worked for Monster.com, Shailvi’s role was defined internally as full stack developer even though the external facing title was still software engineer.
- Some engineers inside the company were considered full stack and some were not considered full stack with the primary difference being full stack developers work on everything related to an application such as…
- The front end
- The back end, which would include databases (allowing Shailvi to pick up some database manipulation skills like SQL / MySQL)
- Programming the browser with HTML / CSS
- Programming the server with PHP and Perl
- Nick loved learning SQL when he worked in IT operations and systems administration. There is an elegance in typing a command into a command line or blank window and getting the data back that you wanted to get.
- Some engineers inside the company were considered full stack and some were not considered full stack with the primary difference being full stack developers work on everything related to an application such as…
- What about that technical generalist who knows some scripting languages? How could they slide over into software development?
- Shailvi says we should look at the jobs out there in this area (whether on LinkedIn, a company website, or some other site).
- She loves that now most jobs have a posted salary range. Find some jobs that based on location, salary, and some other parameters make sense to you.
- Think about what is common between those jobs as well as what you really want. Shailvi says we can almost reverse engineer and think about what it might take to get a "job like that."
- As a word of caution, be aware of technology change. Something that is a hot skill today could be obsolete if you take 5 years to learn it. This is part of the reason Shailvi thinks going to boot camps instead of pursuing a second degree is quite powerful.
- This enables a faster turn around time to get industry relevant job skills and learn programming languages that are in high demand.
- For newer technologies there may not be many people who have experience with these which can often mean people are willing to take a chance on someone who has spent time learning and doing projects in these areas (allowing the candidate to position themselves in a much better way.
- Are code snippets on GitHub going to get the attention of a hiring manager?
- Shailvi hasn’t hired software engineers in a long time. When she is on hiring panels for these roles she is looking at how they collaborate with data, etc.
- She says even when hiring for data-focused roles (like analysts), they are also expected to code. Snippets can be very helpful as can linking to a portfolio of work you have done on your resume.
- But no one will hire someone without getting them to do some form of coding exercise. This could be a live exercise, pair programming, or an assignment you complete on your own time. Different companies have a mix and match approach to how they test coding skills. The expectation is there that you will be asked to demonstrate proof of code (i.e. prove you can write code for something).
22:58 – A Forced Decision
- Shailvi has told this story multiple times but is going to reframe the story for our current climate.
- After working as a software engineer for 5 years (at Monster) she was encouraged to move to the analytics side.
- During the 5-year period Shailvi moved across 3 different continents.
- The business had also decided to (by this time) layoff the rest of Shailvi’s team who were in the United States. She was the last person on that team left and was working in India.
- The business did the layoffs and gave Shailvi some options. She was told the team she was on no longer existed and she could take the severance package and make tomorrow her last day or take an analyst role.
- This is the part of the story Shailvi hasn’t really mentioned previously. This came as part of a tradeoff in a layoff situation. It was an interesting situation because the company offered the option of a very generous severance package, but Shailvi also had no clue what being an analyst meant or what an analyst did.
- After hearing that in the new role as analyst she would still get to code 50% of the time, Shailvi agreed to take the analyst role. And that is the story of how she got into analytics. It was chance, luck, timing, and a bad economy.
- Shailvi was only giving a day to think about it before being forced to make a decision, and this may have been due to the fact that she was working out of India and not in the US.
- She felt lucky that she had an option and strongly considered taking the severance. Shailvi is glad she chose to learn something new and try something different in taking the analyst role. It worked out very well for her.
- In all of this, the roles Shailvi and her teammates were doing were completely eliminated.
- The team had been slowly shrinking in the years leading up to all of this and was not a huge surprise.
- The company was a great company to work for, and Shailvi was grateful to have worked there for so long.
- The analyst role was a net new position.
- In her time working as a software engineer before the change to analyst, Shailvi was working for a US-based team with no operations in India at all.
- Shailvi indicated to her employer she would like to move back to India but keep her job as a software engineer. She even took a pay cut to do this and would work out of her company’s office in India.
- There was another team at the India office working on a completely different part of the business who knew they could use an analyst to help what they were doing.
- The move of Shailvi to analyst was a way to take someone who had experience at the company and knew the business and retain them (Shailvi).
- Since Shailvi had made relationships at the India office with members of the other team, they knew of her reputation and were willing to make a new role.
- Shailvi would ask others in the India office for help when she ran into issues because her colleagues were sleeping. Even though Shailvi was asking for help, it was still showcasing what she was capable of doing.
- One thing she was capable of doing was asking for help with a problem when she got stuck.
- Nick likes this perspective of asking for help demonstrating to others what you are working on and the problem you are trying to solve.
28:55 – Realities of the Analyst Role
- Shailvi was told the analyst role would still be 50% time spent coding, and she thinks in many cases it was more than that (which is not a problem for someone who loves to code).
- Shailvi says some of her mathematics skills from time in education had atrophied by this time. As an analyst statistics is a very highly prized skill, but it was something she had barely used as an engineer.
- Shailvi had to learn things like how and when to run an experiment and how to evaluate the success of an experiment (something she did frequently as an analyst).
- She also had to present the findings in a compelling manner (which some may consider a soft skill). It was a very different skill for her.
- As a software engineer, Shailvi did not have to try to convince someone to select the right option based on hard data findings (i.e. trust her findings).
- "As a software engineer, you don’t have to convince somebody about trusting your findings. You are asked to solve a problem, and you either solve it or you don’t solve it." – Shailvi Wakhlu
- Shailvi also had to learn things like basic dashboarding (not something she had done previously).
- As far as getting help filling the skills gaps…
- During her time on different continents in previous years Shailvi had met people in Europe who worked on other teams at the company that she ended up contacting for some guidance and help filling the skills gaps.
- Shailvi also had a personal network of people she knew from college and friends which could be tapped for help. They pointed her in the right direction at times.
- Shailvi’s manager was also quite helpful in providing general guidance on what she could learn / focus on.
- Shailvi loved the data analyst role after getting into it and is extremely happy she made the move.
- Looking back on her career. Shailvi doesn’t know if she would have stumbled into it on her own but feels like data would have found her. After the analyst role she has never looked back.
- "I loved my software engineering days, but now that I’m in data I’m not going back." – Shailvi Wakhlu
- When Shailvi would run experiments one of the reasons behind it (to take an example) was to make the Monster.com alerting algorithm more relevant to more people. She would test multiple iterations to see which one would in fact land people more jobs, better jobs, more relevant jobs, etc.
- Likely very few people understand the analytics back end that goes into sites like Monster.com or other popular sites these days.
32:57 – Tech Lead to Manager and Owner
- Shailvi would go on from there (after 6 years at Monster) to start a business called Abundance Group. Nick calls this an experiment in and of itself.
- Shailvi says part of this was timing, location, and things she was seeing. In the worst case scenario if this did not work out she had a job she liked and that suited her.
- She was setup financially to try something, and if in a year she didn’t get enough traction it would still be ok. She had skills and experience that would still be relevant.
- Shailvi and her husband were at a stage where they could start a company together, so they did!
- Shailvi and her husband met in college and were used to navigating things together but still maintaining boundaries and discipline. They are each pretty structured.
- They had set times in which they would work and tried to only work within those time slots. Your own company is never a 9-5 job, but they did try to separate work time and time not working.
- They kept a cadence of vacations, family events, and spending times with friends. When it was time to work on their startup it was a different thing.
- Shailvi and her husband established clear areas of ownership. She owned pieces, they might work on them together, and she owned the final decisions for those pieces. In a similar way here husband owned certain pieces and was the final decision maker. Because of these mechanisms, they had ways to overcome disagreements (if there were any) before they even started.
- Her husband was in charge of getting customers, for example, and would sometimes sell things they did not know how to build. Shailvi was responsible for the technology.
- Shailvi had experience as a tech lead before owning a business, which indicates leadership experience. But she had not previously acted as a manager.
- Drawing on experience down the road, Shailvi constructed a spreadsheet outlining the difference in responsibility between a tech lead and a manager.
- To summarize, tech leads are primarily responsible for the technical delivery of something. They can own decisions around the architecture, how something would be delivered, and various other technical decisions which may arise.
- Unless there is a separate project manager, often times the tech lead will be responsible for communicating timelines, coordinating with stakeholders, making sure requirements are met, etc.
- A manager’s primary job is to manage the people who report up to them. This means a manager is responsible for…
- Employee career growth
- Employee satisfaction in work being done
- Giving important feedback to their reports on things which need development / areas of further growth
- Managers can sometimes be technical leads that manage a technical project and all the people who work on that project. These roles can be separated, and it really depends on the company.
- Someone who is a manager and not a tech lead also is responsible for employee health, happiness, and growth.
- Player / coach tends to mean the person doing the managing or leading is also doing some of the work themselves. This is another distinction. Someone can be accountable for delivery but not actually executing on it (i.e. might just be coordinating the people who are executing on it). There are many different terms which resonate with different people.
- During the time she owned her business, Shailvi was both player and coach.
- When the company began, Shailvi wrote all the code herself. She knew as the business grew more people would be needed to shrink delivery time and meet customer demand.
- Once there were more employees on board, Shailvi would serve as tech lead for some projects. For the rest of the projects, a different employee at the company served as the lead.
- Shailvi also served as manager to a group of employees. management was very new to her, and her skills were in a very nascent state.
- Shailvi started by hiring one developer, and this person brought along 2 others to work with Shailvi and her husband. Shailvi says this is the kind of thing you want. You want to retain employees, for them to refer other employees, and for employees to care about the outcomes of the business.
- Shailvi certainly had aspirations to move into leadership after her early experience as a tech lead, but it was not the primary motivator to start a company.
- Starting a company for Shailvi was more about trying something different and stepping outside her comfort zone (a structured environment working for an employer). She wanted to try something that was ambiguous, that had the potential to grow, and that had the potential for her to learn in many areas, etc.
- Though the outcome from starting a company was some great experience in leadership, the primary motivation was something very different.
- Advice for someone wanting to start their own business…
- Finances have to work out for you to do something like this (a very critical piece).
- You must have conviction in your skills and the proper discipline.
- Making as many decisions as you can up front with rationale behind the decisions and sticking to those decisions makes the process easier.
- The idea here is decide what you will do in specific situations before those happen. That means you need to think about possible scenarios in advance and have a planned action.
- For example, if you are starting a business right now and you need to get 5 paying customers within a year for it to make sense.
- In an ideal world you would spread these out over a year (i.e. once every few months you get a new paying customer). This is typically not how it happens. You may reach month 11, convince that first customer, and then get a couple more.
- Before staring Abundance Group that she co-ran with her husband, Shailvi had started her own company. It was a failed startup that she worked on for a couple of months and then gave up due to lack of traction (not listed on her LinkedIn).
- This was the first time Shailvi learned she did not have a fully formed plan. She had not accounted for the fact that it could take a lot longer to get something than she expected.
- If you’re considering starting a company, have a plan, and have a fail scenario (i.e. what you will do if you do not hit your timeline milestones). Nick suggests this means you need a run book for success and failure.
- There is one key difference between product manager and product owner.
- The product manager owns the strategy and the vision of a product.
- A product owner is more tactical. They are usually executing on someone else’s strategy and vision.
- Shailvi says when owning her company the strategy and vision came from the clients. Clients would normally share a high level "pie in the sky" of what they want / want to do.
- Shailvi might give feedback on a client’s strategy and vision, but it was ultimately owned by the client.
- Most companies have product managers to develop a clear strategy and vision so that people working on the product can execute within that vision and strategy.
44:11 – A Business Sunsets
-
Part of this always comes back to timing, location, and logistics.
-
While she was running her own company (somewhere in the middle of it), Shailvi and her husband decided they wanted to move back to the United States (San Francisco).
- Some of Shailvi’s clients were based in Menlo Park, California while others were based in the Middle East or in India.
- After coming to the US, she realized the business would not scale in the same way.
- The finances worked when she was earning in dollars and spending in rupees. Now she was living in one of the most expensive cities in the country, and she needed to earn a lot more for it to make sense.
-
It was a conscious decision that Shailvi did not want to scale the business to a giant operation.
- Being in silicon valley was also something very exciting in Shailvi’s line of work.
- This was an opportunity to learn on someone else’s dime. Shailvi wanted to learn from others who are building interesting things. She had a lot of value to add but also a lot of value to gain from other ways people might be doing things.
-
Shailvi likes to make decisions based on data (and considers herself to be a data driven individual).
- A spreadsheet helped her make the decision to move to San Francisco (SF), so she made the move.
- By the time she was in San Francisco, she had worked as an engineer for 5 years, had run her own company for 2-3 years, had worked as an analyst for a year, and there was product ownership in between. There were a few different options as to which path she could take.
- At this point Shailvi picked the thing most interesting to her, which was analytics, despite only having a year of hard experience in the discipline. She decided to go after this for a couple of months, and if she could not find something, her plan was to re-evaluate to see if she needed to go after something different.
- But she never ran into this problem. It worked out well for her.
-
Shailvi did get asked why she wanted to become an individual contributor again, but overall, she felt it was looked upon very positively in the interview processes to become an individual contributor again.
- Shailvi says it was appealing to people that she had tried something on her own.
- There were also multiple applications she had built that she could point to and share the reasons for building them.
- There were companies who really questioned how Shailvi would fit into a role where she was not the boss (which is a valid concern).
- Her next role after owning her own company was working for Prezi. It was framed as a leadership role, and the company was happy to have someone with that type of experience. It was framed as an opportunity which still kept some of the things she was used to doing.
- Shailvi was told she would start as an individual contributor but would be given her own team after a few months, which did not end up happening (nothing to do with Shailvi).
-
Some months later a leadership role opened which was more of a tech lead for all of the analysts in the San Francisco offices (2 of them).
-
Mentioned in the outro
- Continuing to spend time on coding despite Shailvi’s progression to higher levels of management is similar to the advice in The Manager’s Path by Camille Fournier.
- Maybe we should add Shailvi’s guidance to articulate lessons learned on a resume to our standard advice? It was a great point!
- Check out John’s mention of the dangle from Manager Tools.