I completed one year at Last9 today. When I joined Last9 on April 20th 2020 last
year, I was unsure how it will pan out. I only knew Nishant and Piyush -
founders of Last9 from Pune tech community. But I had never worked with them
before. Some of the feedback that I had got with friends who had worked with
them was not encouraging.
I was also unsure about the product Last9 was building. I had never worked in
SRE domain. I didn't know anything at all about the problems the SREs of the
programmin
Prathamesh Sonpatki
Share:
I completed one year at Last9 today. When I joined Last9 on April 20th 2020 last year, I was unsure how it will pan out. I only knew Nishant and Piyush - founders of Last9 from Pune tech community. But I had never worked with them before. Some of the feedback that I had got with friends who had worked with them was not encouraging.
I was also unsure about the product Last9 was building. I had never worked in SRE domain. I didn't know anything at all about the problems the SREs of the programming world face. I was also a Rails developer at that time having worked primarily on Ruby on Rails for around 6-7 years.
The last 1 year at Last9 was a blur. It started and finished very quickly. But it was also rewarding year in terms of personal and professional growth for me. In this post, I would list down few things I observed and learned at Last9.
Understanding problem(s)
As a developer, my first reaction to any problem is to start thinking about how to solve it. I could fix bugs very quickly but at Last9 I learned to live with the problem for some more time to understand it throughly before attempting the solution. Our team constantly asks what is problem statement? What is target audience, who will benefit from this and how? Also instead of rushing to the HOW part, I learned to wait and collect similar problems before attempting the solution. It is still a struggle but lot of my internal conversations these days have this line - "not rushing to the solution but .." 🙂
Embracing failure
As a person, my tendency is to avoid problems with my work. I try to avoid painful conversations. But one of the thing that I learned at Last9 was to embrace the mistakes. We try to follow Blameless RCAs where pointed questions are asked and answered. I was very uncomfortable with this fact initially and was taking it personally but slowly I am starting to get rid of that habit.
Boring solutions with boring tools and minimal code
We try to solve the problems with boring technology with minimal code. We rely on the tools that most of our team members know before reaching for new tools. For eg. we use PostgreSQL, Python, Go, Ruby on Rails, React and even Bash at Last9 at various places. We even use Active Admin from Rails world to manage bulk of the admin functionality allowing our customers to automate workflows.
Code Documentation matters
Workflow diagrams, sequence diagrams, flowcharts are standard at Last9. It helps in having same mental model for a feature that is developed by multiple teams. We have micro services and having a shared mental model helps us be on same page even when our delivery mechanism and speed differs.
Importance of SQL
When I joined Last9, I was used to write most of my SQL via Active Record. Here I worked on so much of SQL that it became a natural way of thinking. We have strong focus on query plans and making sure that the queries are optimized before they reach production.
Seek and provide clarity
At a fast paced startup, time is a valued currency and seeking clarity about why we are doing something is utmost important. My job is not just to get clarity from others but to also provide clarity to other team members. Even when I am not shipping code, just providing clarity to my team members is moving company forward.
Playing for the team
At Last9, everyone plays a role at work similar to a sports team. The roles may change based on requirements, bandwidth, urgency but still you are expected to play your role well. This includes development, QA, documentation, on-call, deployments, basically everything and anything. It is never about individual but as a team. This was one of hard lesson for me as I had worked in consulting a lot where working remotely and individually was my experience. But working with team members according to their strengths and weaknesses and still producing the desired output was something new for me. Also your role changes based on what your team needs - not what is comfortable and easy for you. I started working on Ruby and database for first few months. Then completely shifted to frontend writing JavaScript code for few months and now dabbling in Go along with Ruby and JavaScript.
Knowing your limits
I realized that everyone has different limits and bandwidths. Being vocal and upfront about it helps everyone plan the delivery. When working at a startup where everyone is working is hard, it feels bad to NOT work. Everyone is working so why should I not? But everyone is different. So take breaks if you want. Last9 team is always considerate about this and people and family matter more as a rule than everything else.
Play the long game
Lastly and not the least, working at a startup is a marathon. It is a long game. There will be ups and downs. Being emotional about either of them will not help me and my company.
Overall it was a very fast but at the same time rewarding last year for me. There were highs and there were lows. I feel uncomfortable at work almost every day but that keeps me interested in what's coming next.
We are hiring for multiple roles. Join us in our journey in building a world class SRE platform. Reach out to us here.