Blog
Statistics for Sustainable Development > Blog > Reflections on my Stats4SD Internship as a Remote Developer
Reflections on my Stats4SD Internship as a Remote Developer
Introduction
It
was December 2019 when I received an Internship offer from Stats4SD. I remember
it well as I was in a taxi heading home from Makerere University. I would become
a Programming Intern, working remotely! So many things have changed since this
point, as I have grown as both a person and Developer. Working remotely is hugely
different from working in an office. For someone like me who had never worked
in a remote-based environment, the start wasn’t especially smooth and it came
with various challenges. Eventually, it got better but it’s worth looking back
now and reflecting on my early days. So, though I was excited at the offer, I
had plenty of questions about what the Internship would look like. I knew I was
in for a unique experience; one that is different from my past Internship
experience of working 9am-5pm in a physical office. This article is a story
where I openly share the lessons experienced through my journey of working
remotely as a Developer.
Work
structure
The great thing about Stats4SD is
that it’s globally distributed, meaning that some of its staff can work from
any part of the world, at any time of the day. On my first day, I had an
introductory meeting with Carlos, the Managing Director, along with Dave and
Chris, my Internship Mentors. I can clearly remember that day. After my Zoom
call, I remember asking myself: “So what next, what should I do?” It was
a valid question really. There wasn’t any office I had to go to, yet I used to
associate the start of my working day with arriving at the office. I felt perplexed
at the time.
Initial
challenges working remotely
Being new to working remotely, my biggest challenge was confusion over how the work was done and structured. At the start, I was mostly working from home to manage my time more efficiently. I had to ensure my Internet speed was fast, therefore I bookmarked FAST (a network speed measuring tool) on my browser. Working from home really worked out for me in the beginning, because I got a lot of things done with zero distractions, until it dawned on me that I was starting to feel isolated. I quickly found a solution to this in the name of co-working space.
Co-working
2 weeks after joining Stats4SD, I
decided to find a co-working space where I could commute to every day. The
first place that came to mind was the Infectious Disease Institute (IDI) at Makerere University. I
was welcomed with open arms at the African Center of Excellence in
Bioinformatics & Data-Intensive Sciences (ACE), within the institute. This was like home to me - I had
previously volunteered at ACE as an IT Specialist where I was in charge of
providing IT support services. At ACE, I was glad to find a friend and a
co-worker Hannah, who also worked remotely and had enough experience of working
in such an environment to understand my challenges. My arrival at IDI made
things more interesting. My typical workday became longer as I engaged with
numerous staff and participated in the day-to-day activities at the centre,
which I found exciting. Finding people you can work with is a great way to stay
social. I met like-minded people with whom I had lots of things to connect
with.
Time
management
“Managing time is key when working remotely. The people you
report to are not always around and even when you do hear from them, the
communication is asynchronous. You need to be self-disciplined to accomplish many
of the tasks.” Those were Shiphar’s,
Stats4SD’s Research Methods Assistant, based in Uganda, words of advice. Every
meeting I attended, we made action points, prioritised them, and then made sure
that they were the week’s specific goals that had to be completed. Prioritisation
really helped me with time management, and it also made me more focused on the things
that mattered.
Of course, distractions happened from time to time, and I kept finding new ways of being focused and improving my productivity. I have to agree that with programming, things don't always go according to plan. Occasionally you’ll start a day with an objective to finish, only to realise later that you have failed the task after spending nearly 8 hours on it. This never demotivated me: in fact, most of the time when I failed at something, I would take a break, and then after a few hours, a solution would magically present itself to me while thinking about other things. This could even be at 1am or 2am! I would gladly open my computer at any time to solve the problem – and nothing made me happier
Image 1: A
picture of a week’s action points
Upping the communication game
Having differing time zones with the UK and Uganda, communication initially felt like a challenge. It was not always possible to jump on a call or get an immediate response to direct messages. A lot of my learning was done through shared screen tutorials and stack-overflow during my own time. However, it was reassuring to know that if I got stuck on something, I was able to confidently WhatsApp Dave and Chris who were always a ping away. To me, that was the equivalent of walking over to someone’s desk and asking for help. Every Friday, I met with Dave or Chris on a weekly review meeting via Zoom, as we reviewed the week’s tasks and discussed the coming week.
Living
my best remote life: lessons learned
With the help
and advice from my mentors and the lessons from my experience over time, I have
become better at working remotely and become more productive. After a couple of
weeks, I started to enjoy my remote work style, and realised how it opened up so
many possibilities for me.
My time at Stats4SD was mostly dedicated to
three things:
1) the Stats4SD Resources Report System (RRS), a lightweight application that queries
backend endpoints, and Google Analytics endpoints to generate a usage report of
the Stats4SD website and resources
section. I built this in VueJS, used the Google Analytics Service, learned
about querying its API endpoints, and how to use Service accounts. As someone
whose experience was in ReactJs (an alternative to VueJS), it was fun jumping
on to another technology. This was something that seemed impossible at first,
but with both being component-based frameworks, I always found myself inferring
most of the approaches from the knowledge I had in ReactJs.
Image 2: Screenshot from the Stats4SD’s Resources
Report System (RRS)
2) The Research Management System (RMS); an
external project for one Stats4SD’s partners in the region, this was a result
of productive meetings conducted by myself and Shiphar with the Cereals FRN and
the Sorghum project. My interpersonal skills as a Developer drastically
improved here. One of the challenges that they faced was data inconsistency
across various devices, media, and project personnel. They expressed difficulty
in managing different survey forms, results, and other data sources. We
proposed to come up with a RMS to make it easier to centrally store, work with,
and share work resources. I used Laravel as the development stack, together
with Backpack.
Image 3: Screenshot from the Research Management System (RMS)
3) A Google
Cloud Associate Engineer preparatory course, under
the personal development track, - here things got interesting as I had to
choose and learn a skillset of my choice. I decided to take on cloud computing
- having had some experience in Linux system administration, this was a
skillset that I always wanted to develop. I registered for the Google Cloud
Platform(GCP) course that was running on Udemy.
In
the end, it all paid off well, it was exciting to utilise my skills in
containerisation and deploy RMS & RRP systems into
a docker container on the Google Computer Engine.
Conclusion
The
past three months at Stats4SD have been incredible for me; lessons were learned
and new skills were attained. I successfully
worked and completed two projects, the Stats4SD resources
report system (RRS) and the Research Management
system (RMS). I have learned and used the Google
Cloud Platform. Stats4SD gave me
a chance to develop and improve my technical skills. My journey has just
started, but over the past couple of weeks, Stats4SD has made it feel like it
started five years ago. There’s certainly more to learn, more problems to
solve, and yet more to build upon - and for this, I am very grateful. As I
continue my journey as a Developer, I hope to use the knowledge I have learned
to solve even more problems in the wider world.
Written
by Mike Nsubuga
References
https://www.freecodecamp.org/news/reflections-on-being-a-remote-developer-757465ed1e9e/#_blank
Author: Dave Mills
Dave developed an IT & data infrastructure that allows us to close information loops and deliver tailored information to diverse users, through data collecting mobile apps. He is also responsible for the development of our eLearning portfolio and Open Educational Resources.
0 comments for "Reflections on my Stats4SD Internship as a Remote Developer":
Add a comment:
We run an anonymous commenting system. If you are not logged in, we do not collect any information on who you are when you leave a comment. This means we manually confirm comments before they appear on the site.
If you want to have a comment you submitted deleted, please contact us, giving the date of the comment and name of the article.