It’s been an engaging and enlightening week. I came into the Ona offices certain that the internship would demand from me nothing short of diligence and strong work ethics. But I did not expect that to be the case from my first day. I expected a day of orientation, but that lasted for an hour. I had a brief introduction to my coworkers and the next thing I was shown my workstation and given a laptop.
From my short observation, it was evident that the accolades Ona has received this year, from being selected as one of TIME magazine’s Top 50 Most Genius Companies as well as being the 2018 Gavi pacesetters for Ona’s OpenSRP app did not land at their doorstep by mere chance. It was a Monday morning and everyone was deeply engrossed in their work. I was inspired by just seeing how immersed my coworkers were in their work, be it out of passion or assiduity. The work environment here is fast-paced, yet the culture and atmosphere is relaxed. In my opinion this allows the employees to be themselves and get into their individual element. This in turn, allows the team to be collectively productive.
Based on my first two weeks’ observations, I can already sense that the coming months are going to be my most intense yet in terms of self growth and learning, having already been thrown into the depths of the project that my supervisor, Antonate, is working on. I’m sure I have deeper depths to dive to, but this week has most definitely geared me up for what lies ahead. She’s made it clear from the start that I’m not here to merely observe what she does, but we are to work as a team and collaborate.
The project we are working on, Canopy, is a data management solution that allows its users to aggregate data from different sources and insightfully visualize this complex set of data. It offers three main services: Canopy Flow, the data ingestion layer, Canopy EDW, the data warehouse layer, and Canopy Discover, the visualization layer. The primary technologies used to implement these layers are Apache NiFi, PostgreSQL, and Apache Superset respectively. NiFi is used to retrieve data from different data access platforms, perform transformations, and route it to the data warehouse. This data is then viewed by the client on customized dashboards created on Superset.
For sometime after campus, I wasn’t sure I wanted to be in the software industry. At the time, and as is the case now, the industry was changing at lightning speed and I felt I couldn’t keep up. There were new tools, languages and frameworks being introduced every other day. My hesitation in further pursuing a career in software development was heightened by the fact that I never found a job description that met my ambitions from the job openings I came across. While I was on campus, I had a passion for machine learning and artificial intelligence. All my major projects while there were based on integrating AI concepts into my solutions. I used genetic algorithms to solve an optimization problem and game theory to solve a networking problem. This was where my heart was, AI and machine learning. But alas! The only roles I could find were web developer roles.
I decided to branch into a more specialized field and decided to do a Masters in Industrial Engineering, which is all about improving and optimizing processes and systems, be they people oriented or mechanical. I absolutely enjoyed doing the degree but while I was doing this, a new field in the computing world had being gaining steady traction, Data Science. I finally reached a point in my life where I felt sure of the career progression I wanted. Getting into the data science field would allow me to combine all that I have learned from my undergraduate to my masters while focusing on my passion, AI and machine learning.
So here I am today, at Ona, a company that offers data solutions in the humanitarian aid, government and global development sectors. I was lucky enough to be assigned to the Canopy project. Part of the project involves developing a feature that integrates AI and machine learning to perform predictive analysis and forecasting that will provide actionable insights. I am appreciative that Antonate has the confidence to delegate tasks to me on actively ongoing projects, which goes to show that, Ona’s internship program’s main purpose is to allow junior developers to learn and grow their skillset.
As I embark on new challenges everyday, I focus my attention on trying to understand the bigger picture: the architecture of the system I am working on. In trying to understand the architecture, I look at what components and tools are used to build the system and more importantly why those particular tools. I figured this is the best way to beat the overwhelming feeling I had during my undergraduate years regarding the speed at which the industry was changing. I believe it is necessary and fundamental as a junior developer to appreciate this point; that it is foremost important to understand the advantages of using one tool over another and not simply randomly adopting any tool based on popularity. If one doesn’t do this they run the risk of not embracing better tools when they get introduced into the field.
I have been positively challenged these past two weeks. There is much to learn, especially considering it has been a while since I have worked on a large coding project. At the same time though I have never felt more assured of taking a decision. I will be sure to put my best foot forward and try to make the best of this opportunity by contributing to the Canopy project and whatever other challenge that may come my way.