The Roller Coaster Journey With A Young Startup, Ula

Kuntal Chandra
Ula Engineering
Published in
8 min readApr 28, 2022

Background

Back in 2021, I’ve been working with Akamai Technologies then. Before that have worked with one of the large scale internet companies, Rediff and a couple of startups as well. Half of 2021 passed on, I realised it was time to move on.

The very initial discussion

One sunny day, a recruiter from Ula reached out. A smooth discussion on what, why and how. Quite obvious in this hot tech industry have been discussing with a lot of folks and trying to understand what’s going to work for the long run.

That gut feeling

A couple of discussion rounds came into place. I realised during these discussions I was able to differentiate between listening and hearing. Obviously won’t be sharing the exact questions but abstractly, the discussion agenda primarily consisted of -

  • How much eager to solve some core complex problems with technology?
  • How do I take care of System scalability and high availability?
  • How far can I think about optimised well-engineered solutions?
  • What kind of tough problems did I enjoy solving earlier? What are the takeaways?

Fun fact

Ula maintains a similar technical interview process for a Tech Lead role and a Lead Engineer role. It’s up to the person which role he or she wants to explore. I expressed interest in the Tech Lead role, got an offer and I accepted this one.

TL;DR How it’s going on

Fast forward 8 months and here I’m

What my manager thinks about me

[Reference: Dilbert and the numbers]

What my teammates think

[Reference: Dilbert Does Nothing Useful]

What I do

[Reference: Keep patience, Dilbert]

Journey

From the very day one, I realised my gut feeling was correct, this journey is going to be an exciting one. My day to day journey looks like

  • Support the business. Get involved with various stakeholders. Understand the upcoming business feature to break down a complex problem into smaller chunks.
  • Maintain the development balance between the product features and the Engineering initiatives, including addressing tech debts.
  • Mentor the junior folks. Find out the needed balance to align individuals’ career goals towards the upcoming business features. It must be a win-win.
  • Keep an eye open on the proposed designs which include HLD and LLD.
  • Keep some dedicated time for PR reviews. The cost of bad quality code increases the maintenance cost and eventually bugs.
  • Closely understand the on-calls. Understand the pain points and find out how to address the root cause. Help the team to see the longer vision than providing short-term resolution.
  • Collaborate with the Leadership, Product, QA and other tech teams. Results on an average of 8 meetings a day.
  • Team building and scaling. Work towards the optimal way which gets measured by
    - Velocity
    - Resiliency
    - Business impact
    - Quality & timeliness
  • Periodically catch up with the HR team to meet and greet the team expectation.
  • And, if still time permits, free to choose how much I want to contribute through hands-on coding.

Try it out. Certainly, there would be some mistakes, let’s take away the learnings from there.

You’ve got to crack a few eggs to make an omelette.

What’s the actual journey

Ula is a start-up. It’s unfair to expect everything is already shaped up. Otherwise, I might not have been hired for this fire-fighting position. What happens on top of the above

  • First, fix the processes and agility in place. Some are already working smooth, at the same time, there would be a need to get a couple of things running which gets the teams’ job easier over the period.
    – BTW, do it in a way that the other teams also get inspired to follow the path.
  • While the prototyping period, junior folks were motivated to put their blood and sweat into the immediate outcome. Now, the business has grown up and requirements became complex, leading to a clear need to work on optimisation and complex Engineering tasks so that the root stays stronger while everything is growing at bullet speed. It’s very easy to get quick claps on delivering a product feature but Engineering problems? Huh, that’s a pain!
    – No worries, the TL is there to mentor the junior folks to show how important is to solve the core technical issues.
  • Everyone wants to be in limelight. No one wants to pick up defects from the backlog. What’s the point to clear tech debts? The team won’t ever realise unless an on-call comes for this.
    – Pick up the baton. Clear up a couple. Maybe a very small bug. But trust me, the team notices that this guy can pick up the broom when needed.
  • Work with the HR and EB team. Same time, guide the team for the tech talks and knowledge sharing.
  • One service gets transitioned to the team. The architectural diagram is missing. Everyone else is occupied.
    – No problem, the TL is there to get the diagram in place.
  • One team member pings, hey Mr Great TL, have you seen that ongoing thread in the on-call channel? Irrespective of the data debugging dashboard and explaining it twice, still, same data issue? What more can we support?
    – My job is to find what’s missing, get mutual agreement.
  • One of the Senior folks from another team is going on leave. He is an individual POC for a certain service. Other teams are as usual occupied. That person might come to me and looks for support till the time that service ownership moves over to the applicable team.
    – Simple, start the KT, documentation and transition in place. Find out irrespective of the busiest schedules in the entire team, who actually would be able to support me in this transition.
  • One new product Product initiative comes. The ongoing quarter’s planning is over. The team is occupied with all the ongoing hustle-bustle. Impossible to get a Senior folk to groom towards the SME.
    – Fine, the TL is there. Support it till another SME becomes available post handing over the responsibility to the present POC.
  • On a beautiful day
    – Pick up a PR which is failing to meet the needed implementation purpose. So? Schedule a meeting with the Architects, discuss, revert what has been done and help forward towards a correct implementation.
    – Another PR just to find out there is code duplication and that too got approved by Senior folks in the team. Next? Take a firm stand to get it rectified.
  • The org is preparing for a big sale. The Lead Engineers are occupied with the DevOps team with the infra planning. Senior folks are engaged with the SDET team with stress testing. Junior folks are busy with last-minute deliveries. Still, there is a need to work on the Databases, data clean-up, data archival and further planning.
    – Fair, the TL is still there, right! It’s not a rocket-science.

And, you know? I’m just loving this journey!

The Team’s mantra

Nowadays the team has become mature. We got confidence in each other. The very first thing we claim is trust. Happy to be a part of the team we built together. We focus on 3Cs

  1. Contribution- No competition, rather maximise and optimise at an individual level.
  2. Collaboration- In and across teams
  3. Celebrations- We went to Goa workation just a couple of months back for the 2nd time in a span of 6 months. And again looking forward to going out very soon.

Lesson learnt

  • Tech Lead’s role is not a promotion. It’s a role change.
  • There is no checklist that a Tech Lead may expect.
  • Every team is different, everyone in the team is different. Try to understand what people are looking forward to and align the goal and expectation based on individual person.
  • The Tech Lead is the most goto person in the team. So, let’s be prepared always.
  • The paths are going to be diverse among Individual contributors and Management, a Tech Lead intersects in between. It’s not a step up, it’s a step across.
  • Focus on What, Why and How objectively. Keep the metrics handy.
  • Getting the proper design in place, writing code, clean code and focusing on tests are not only the key parameters to being a Lead. To succeed in the role, a Lead needs more skillset, including people management.
  • If there are Leadership skills, Developer skills and Architecture skills, then, a Tech Lead belongs in the centralised common intersection of those.
  • Must be a balanced juggler. Not an expert in one area and null in another, rather maintain equibalance.
  • Technical Leaders must focus on
    – Aligning the Team
    – Technical vision
    – Growing Technical knowledge for self and the Team
    – Technical risk management
    – Tech debt management
  • Understand how the codebase is shaping up at the time team is evolving.

The behavioural change

Somewhat odd

With great power comes great responsibility
  1. Outsider

An Engineer in an Engineering team is the norm. There are peers to help when there is a need. But as a Lead, find out the way, there will be grey areas where the Lead has to walk through the difficult road to show the path to the team. It’s okay to walk lonely, till the time it is helping the team to stay together.

2. Different role

A Tech Lead is supposed to shed the team from the ongoing noise. There will be hustle and bustle in different places, a Lead might be knowing a few things. It’s difficult to keep it inside while the Lead claims to be transparent, but, that’s how the role is.

For any Leadership role, the question remains the same- Is the Leader adding enough value to the team’s success? Let’s remember, it’s the time to build new Heroes instead of being a Hero. And, it’s just the beginning, miles to go.

[Credit: Some of this advice are taken from Talking with Tech Leads]

--

--

Kuntal Chandra
Ula Engineering

I build products. At present @uladotapp. Ex- Rediff, Akamai