This is the first time I spend time thinking about an yearly review and write one. So, I decided to start light-weight and simply tried to answer to some of the questions mentioned in this Tweet. I either listed the relevant points worth mentioning as individual paragraphs, either as bullet points. Sorry for this lack of consistency, hopefully it doesn’t have too much of a negative impact on readability.
What did I expect for 2021 VS what happened
When Covid-19 began I was working as a ML engineer for a seed-stage start-up looking for its product-market fit in the travel sector. The uncertainty affecting the travel sector combined with the fact that at the start of 2021 I was still in furlough made me start the year with fairly low expectations for 2021.
Despite the uncertainty, I ended up sticking with the start-up, mainly because I believed in the product and the CEO. This belief ended up being grounded, given that the start-up ended up being acquired by a data provider called Cirium in March.
During the first quarter of 2021 I also did a bunch of interviews. Which resulted in a couple of interesting offers, as well as a couple of nasty rejections. Doing a relatively large number of interviews, and receiving a healthy number of rejections made me change the way I look at interviews. For the sake of my mental health I started treating them as opportunities to discover some areas of knowledge in which I am lacking, as well as a way to get exposed to different interview questions and styles. This approach made being interview, and possibly rejected, way less stressful.
Following the acquisition I got heavily involved in the rebuilding the ML team, which pretty much disappeared because of Covid-19. As well as leading a lot of the tech and data product development. At the time of the acquisition I was the only employee left, excluding the co-founders. Also one the co-founder, The Cto, recently had a newborn, which had a massive impact on his priorities. Given the very small size of the team a lot of the burden of delivering on the acquisition promises fell on my shoulders.
What went well
The startup I was working for got acquired by Cirium. The acquisition has been an interesting experience and it also made it possible to keep on working on a problem which I find quite stimulating.
None of the people I care about had any significant health issue due to Covid-19
I am quite happy with the new hires we did following the acquisition. Despite being new grads they are quite smart, pleasant to work with, filled with enthusiasm and seem to care about the problems they are working on and about owning the solutions.
I did a couple of contributions to a cool python open source library focused on Bayesian statistics called PyMC3.
What could have gone better
I still don’t know what I want to do of my professional life. So far I have been trying to grow as much as possible without worrying to much about the final purpose of my skills. Now I have reached a point in which I feel I am good enough that I can start working on something worth working on, but I still need to figure out what that should be.
I still feel like I don’t have a pure technical mentor in the statistical modelling space.
During the year most of my technical growth resulted from working on problems and reading technical material rather than through mentorship or working with a team of people more experienced than me.
The company that acquired us is fairly slow, it could get better at following Agile principles and it’s a bit too corporate for my taste. A lot of time seems to be wasted in box-ticking. I got the feeling that some people seem to care about a bit too much about their visibility and forcing the importance of their role in the company upon others rather than getting work done and focus on creating value for the company. Having mainly worked in small start-ups I have a different way of defining what a good employee is, but obviously I may be wrong.
How did I grow
In all honesty I am not sure whether I grew a lot professionally or as a person.
I definitely faced a considerable amount of uncertainty in the last two years. Enough to realise that I care more about what I do with my time than about my professional career. Covid-19 and being furlough for some time made me realise that job salary and prestige are less important than what I am able to do with my free time (eg being able to travel back home, going climbing or seeing friends). I guess that reaching this awareness may count as personal growth.
Professionally speaking following the acquisition of the start-up I was working for my responsibilities grew significantly. Which is something that probably would have happened if I were to work for any other company. Having more weight in deciding where we should focus our efforts and the technical choices to make has been quite interesting. I am quite grateful for this opportunity, which I preferred to the option of restarting from zero after joining another company.
I also significantly contributed in re-building the ML team and mentoring new hires. Something I quite enjoyed and I consider a source of growth. Particularly interesting is how more challenging I found mentoring on statistical/ML modelling compared with software engineering. Mentoring through pair programming and code reviewing felt much easier than through debugging a model or modelling assumptions on some data I was not familiar with. I found that not having been involved in the exploratory step of the statistical modelling made it much harder for me to quickly figure out how I could have helped.
Also I got many opportunities for questioning the quality of my professional choices. From a purely financial perspective they could have been better. Although this shouldn’t be surprising given that I have always prioritise for growth rather than financial returns. By joining a small start-up I took a lot of risk, magnified by Covid-19. All considered I ended up okay, but probably I would have been better off if I were to join a scale-up.
I am not sure about what would have happened if I were to join a big tech. I have heard several not great tales from friends. Still, as of now, it’s an experience I am missing, and probably worth having. Something obvious to me at this point is that the aura of big tech names is massive (and irrational). You may have had little responsibilities, not being able to deliver anything valuable, or own your work, still that aura is going to protect you and keep you in a higher salary bucket.
What did I learn
That finding good hires is possibly as hard as finding a good new job. During 2021 I contributed to re-building the ML team for the small company/team I was part of. In doing so I spent a considerable amount of time interviewing candidates. I found shocking how so many people are fine with having a fairly superficial knowledge of basic principles/concepts relevant in their professional area.
I got a more comprehensive high-level view of the Bayesian statistics space. Still a lot of work to be done here though.
I did spend a considerable amount of time focused experimenting with different productivity setups. This included buying a nice external keyboard, Investing some time in getting used to have my fingers orbiting around the keyboard home row, as well as getting used to use all my fingers. I also experimented using VS code rather than PyCharm as IDE. After some time I came to realise that having to move to use the arrow keys when typing is possibly accounting for most of the mistakes and time wasted while typing. So, I am now experimenting moving to Emacs and start relying less on the arrow keys. I am not sure whether spending time tinkering with the typing setup made me learn anything in particular, but I definitely appreciated the increase in awareness on what makes work better.
I spent a lot more time working with Docker. I still need to learn a lot about networking.
How I will prioritise for 2022
Investing more time in reading technical books. For a long time I have been relying on my peers and colleagues to grow professionally. Eventually I realised this is not going to be enough, and doesn’t really work out if you work in a small and time-pressured team. So, I started reading many more blog posts and books, and benefited considerably from these. I want to force myself to spend more time reading books, and apply what I read.
Producing more than consuming. Some time ago I read a nice article about this topic and I started thinking more critically about how much of the content I passively consume I actually keep carrying with me over time. Probably very little. I started focusing my content consumption in areas in which I know I will keep thinking/reading about and whose knowledge I could later use in my life. Still, I mostly consume and think, and not apply often enough yet. This year I want to focus more on applying and producing.
Spending more time thinking about strategy, and what company would be cool to create. A few of my friends started their own company in 2021. Following their adventure has been pretty interesting. It’s a while now that I am talking about starting something myself, maybe it’s time to do it. In 2021 I built a hiking product price comparison website. I already knew from the very beginning that at best it would have generated little revenues (not enough to live on). Still, after having spent quite a bit of time working on that full-time I realised that given how much work was needed to grow and maintain it, the effort may have not been worth it. I still want to build something myself, but the best case scenario gains should make it worth it.
What things will I do differently because of 2021
When valuing myself in the job market I have always tended to stay on the lower end of the spectrum. During 2021 I interviewed for a bunch of jobs and got offers from 2 big tech companies. Also I quite a few candidates trying to fill a ML engineer role. These two experiences gave me a bit more confidence in how much I may be worth in the market. Next year I want to start being more strategic when valuing myself in the market. I also want to stop naively expecting that (potential) employers will treat me fairly
In the last two years I spent a considerable amount of time working on things that ended up not seeing the light of day. Although I still learnt something, and I got paid (for the most part), if I were to work on other, more successful projects I could have learnt much more (and get paid much more). Overall I have been relying too much on the good intentions of others. It took me a while to internalise how often others simply look after their own agenda. From now on I want to be more deliberate on how I spend my time and focus more on figuring out what I want, as well as asking for it explicitly rather than hoping for the best.
Your company and peers can only push you that far in terms of technical growth. There is plenty of alternative sources that may make you grow much faster, such as great books, great blog posts, Twitter threads and deliberate practice in general. I want to dedicate more time reading books and blogs and practicing more on those. I started being more deliberate about this in 2021, this year, I want to invest more time on books, also more time on producing,rather than simply consuming.
What would a great year look like?
Finding strong technical mentors that could help me get to the next level of technical competence.
Finding what I would like to focus on for the next 5-10 years of my professional life.
Getting some external recognition for my skills. Either through appreciation for something I built, either through job offers from great companies, either through appreciation for my blog posts or any other relevant source of external recognition.
Build an app that makes at least someone’s life better. Also, make it so that it’s easy to maintain and grow it. Possibly also envision a way of eventually monetise it.
3 professional and 3 personal goals for 2022
Professional
These are fairly similar to the ones I had for 2021. Last year I started touching these areas, this year I want to go deeper in them.
Get better at system design. Becoming familiar with the main patterns as well as with processing large datasets
Create more personal prestige. Last year I did some blogging and OS contributions to PyMC3. This year I want to considerably increase the blogging side and possibly build another app that is worth maintaining and growing.
Get better at modelling. Start using Bayesian techniques, and become more than familiar with NN common architectures.
Personal
Funnily enough I didn’t need to think too much about these. I think that this confidence is due to a shift in importance from my professional to my personal life.
Lose at least 5-8 KGs and get my body used to the new weight. Getting older it is becoming harder and harder to lose weight. A healthy (read light) weight has a significant impact on how efficiently my body works, how much I can stress it before it starts breaking and what I can do with it (eg climbing higher grades, run faster). Also, the older I get the harder it will be to lose weight, so it’s probably worth nailing now the weight I would like to keep long term.
Start mountaineering and get becoming more knowledgeable of climbing equipment and the relevant physics. I just love the mountains, I already know that starting this late there is already a lot that I won’t be able to do and see. So, it’s time to start and get serious with that.
De-prioritise what others would like me to do and think more about what I, or the people I deeply care about, would like to do. Seeing how my parents are getting older, while I live in another country for the most part of the year, really helps in making you aware that time passes and cannot be taken back. There is a limited number of holidays I will be able to spend with the people I care about. Because of that, I simply don’t have anymore time for the things that hardly matter in my life. Somehow recently I started noticing more how so many people simply care about their own agenda. I just don’t have any more time for letting this influence how I use my time.