TL;DR
The author reflects on their six-month experience at I-Tel, where they worked as a Senior Software Engineer. They encountered problems with the Angular project and worked on a React Native app. They also mentored a direct mentee. The author shares the mistakes they made while evaluating the opportunity and the lessons they learned. They hope to use this experience to help them find a better company in the future.
As you may remember from my most recent company, I left after six months due to various reasons.
During my search for a new company, I came across I-Tel.
π€π½ Why I-Tel?
I chose I-Tel because I was searching for a new position as a Senior and Lead Engineer to enhance my skills.
I had two different offers on the table: one from I-Tel and another from a consultancy company.
But why did I choose I-Tel?
Well, their offer provided better compensation, and at the same time, I discovered I had a friend working there, so I reached out for more information.
Lastly, the company was family-owned, and most of the management positions were held by their children.
ππ½ββοΈ My friend
Upon discovering I had a friend at I-Tel, I reached out immediately.
This was an old friend from school, whom we had known each other through mutual friends.
I asked him about the company, its structure, and gathered as much information as I could before making a decision.
We had a brief conversation, and after receiving some information, I decided to accept the offer from I-Tel.
π¨π½βπ» My role
I was hired as a Senior Software Engineer, specializing in front-end development.
The company had primarily developed new applications using Angular, and they were seeking someone experienced with the framework to enhance the architecture of their apps and optimize the performance of existing ones.
After being onboarded, I began examining their apps...
That's when the problems started.
π₯οΈ Angular
As my first duty, I had to examine one of their new projects, which was supposed to be released in six months (it still hasn't been deployed yet), and honestly, I was hoping it was a joke.
They were unfamiliar with the framework, and even worse, with RxJS.
When I started delving into the code, I discovered numerous promises, conversions of Observables to Promises, imperative programming, and so on.
It was quite unfortunate.
π How it went
Well, after several discussions about the architecture and the code they were writing, we agreed on a massive refactor, even though the leadership rejected our estimates and proposal.
I repeatedly suggested performing the refactor at that stage since the app was still in its initial phase. However, they persisted with their approach, and now they still haven't released it.
π₯² React Native
You just read about the Angular project we were working on...
Well, there was also a mobile app to develop.
Enter React Native.
I had previously worked with React, and they were aware of this, so I ultimately took on the responsibility of working on this app.
π How it went
Although I didn't want to focus on this app, I had to.
React Native is still a framework I don't particularly like, so imagine working with it on an app you didn't want to build, as you wanted to focus on the web app.
When I was introduced to the code, I was even more worried than with the Angular one for the web app.
I discovered the skeleton and architecture of the app were built by some university students as a collaborative project.
To clarify, this isn't a problem; however, if you're developing an app that is vital for your business, I would expect more experienced individuals to be working on it.
I also found out that React Native was chosen over other technologies due to the discoveries made by these university students.
After several months and multiple refactors, my mentee and I managed to develop a solid framework and a well-functioning app. However, there were still various features that needed improvement.
π¨βπ¦ Mentorship
I finally had the opportunity to work with a direct mentee.
I must say it out loud:
It's one of the best experiences you will have during your career.
Why so?
Being a mentor is challenging, yet it plays an extremely important role. You're sharing your knowledge, and you're going to change your mentee's life.
You have to inspire, teach, provide feedback, understand their feelings, comprehend their needs, and so on.
I would say that it went well, even though we had various discussions on different topics. Now, he is working for another company with better compensation and a more challenging role, involving interesting projects to work on.
πͺThe end of my adventure
Based on my previous experience, I left after six months.
The reasons were somewhat similar, as I made the same mistakes while evaluating the opportunity. However, I might have been influenced by my friend who was working for the company at the time (he left two months before me).
I must also admit that, without this experience, I probably would have never applied to my current company, and I might not be as happy as I am now.
β Lessons learned
I'll reiterate, the mistakes may be similar to those from my previous company, but this time, I was influenced by my friend, which could have biased my judgment.
Certainly, the projects and values we discussed during the interview process were never fulfilled.
β Errors I did
And here we are again; the major mistake occurred while evaluating this opportunity.
π Looking back
I would undergo the same experience again if it would lead me to a company like my current one, where I can truly see the difference in how people and teams can work, how the business is driven by the individuals who make it, and so on.
As a side note, most of the engineers I worked with during these six months have left the company.
I hope you enjoyed this article, the fifth of six (for now) about my career.
The last one would be the most intense one, as I have a ton of things to write on!
This series will be a prequel to others focusing on specific topics, so stay tuned and let me know in the comments if you want to discuss a specific section or topic.
πΊπ½ Your lovely neighborhood dancing engineer πΊπ½