My Software Engineering Internship Experience

Reflecting on my software engineering internship, I'm filled with gratitude for the transformative journey it has been. From the bustling office environment on the first day to the camaraderie with talented colleagues, each moment has shaped me. Despite inevitable challenges, from coding frustrations to grappling with new concepts, the support of my team propelled me forward. These months have been a crucible of growth, fostering not only technical skills but also resilience and communication prowess. As I prepare to conclude this chapter, I'm proud of the strides I've made and eager to carry this momentum forward in my career.

Hello there! đŸ‘‹đŸ» If you’ve stumbled upon this article, chances are you’re either an intern, someone eyeing a software engineering internship, or keen on learning about the workings of Cloud Solutions International(CSI).

An internship is a pivotal experience in a students life, providing students with a platform to apply theoretical knowledge, gain practical insights, and hone professional skills.

My journey at CSI began in mid-September 2023, and I’m excited to share my experiences and insights.

Before diving into the nitty-gritty of my internship, let’s first explore what CSI is all about and the services they offer.

Cloud Solutions, is the Information Technology arm of the Dr. Sulaiman Al Habib Medical Group (HMG), situated in the Kingdom of Saudi Arabia. With over two decades of experience in managing medical facilities across Saudi Arabia, Bahrain, and the UAE, HMG is a reputable healthcare provider.

Cloud Solutions flagship product, VIDA+, operates seamlessly in more than 50 hospitals within the Dr. Sulaiman Al Habib Medical Group and an additional 10 hospitals in the Gulf region (Jordan, KSA, etc.).

Vision and Mission

I wanted to share a bit about CSI before diving into my experience. It’s crucial to note that my insights are specific to CSI’s domain, focusing on healthcare. Work cultures and experiences can vary across different companies.

Now, let’s delve into the heart of the matter.

Freshers Fusion Day | Onboarding process

CSI boasts a remarkably smooth onboarding process. Once you successfully navigate their interview process and secure your spot, they promptly provide details about the internship and your starting date.

Before officially commencing work on the first day, we were cordially invited to a Freshers Fusion Day.

This event aimed to acquaint all the newcomers with one another, fostering a comfortable environment for collaboration. It served as an opportunity to familiarize ourselves with the company’s vision and mission, understand the workplace culture, grasp the hierarchy of the company, delve into the technologies in use, and gain insights into existing teams and their leads.

And, of course, they do provide you with company swag as well. 👕✹

Image by Hasni Haleemdeen

Let’s move to the Official Day 01, shall we?

Day 01

For someone who has never had any working experience, heading to work on the first day brought about mixed feelings. However, I approached it with a very open mind. That was important!

Even though you’re an intern, they share a card about you with the company and its employees to make it a more welcoming experience for you.

Welcome to the Team card from Cloud Solutions International

Another thing that was completely new to me was the Open-Door Policy at CSI.

Nobody at CSI calls their immediate Team Head sir or madam. In fact, we are all on a first-name basis over here — including the CEO.

Setting up our office equipment

Now let’s move into the Technological Aspect

Having worked with Windows OS for a while, we were given the chance to work with Linux OS.

Fedora 39

We were taken through the process by the HR team of setting up our work emails, VPN, and other necessities to kickstart our journey at CSI.

CSI has organized the workflow in a very systematic manner. Initially, we were assigned to a team with experienced software consultants as mentors. They helped us gradually grasp the workflow at CSI.

Our very first task on the 1st day was to conduct research and development on Liquibase. I hadn’t even heard of it before, but my eagerness to apply the theories I learned at university and engage in real projects made me curious.

One thing I found exceptionally useful at CSI is that you’re not just given time to learn things, you’re given the time to learn and develop simultaneously.

I discovered this to be the most effective method for rapid growth. Otherwise, if we merely keep learning and taking courses we will not have any practical experience, it’s only when we apply them to real projects that we truly understand their depth.

This is an essential approach to adopt and follow during your internship.

1st Month

During our first month, we were exposed to many crucial aspects in the Software Engineering field.

We have daily standups to share team updates on what we accomplished the day before, what we’re working on currently, and any blockers we encountered. This practice truly aids the team in understanding progress collectively and individually, ensuring everyone stays on the right track.

Another noteworthy detail is that a person from the HR team is assigned to the freshers, referred to as the intern champion. This individual ensured that even though we were interns, we had someone on the HR team to directly address any difficulties we faced.

HR team also conducted a session for us called “Competency Mapping & Skill Matrix,” providing insights into career growth and the level of competencies required in various technologies for professionals at different stages (from intern to higher levels).

After Completion of the 1st Month

After the first month, CSI not only provided dedicated learning time but also immersed us in real projects, allowing us to learn through implementation under supervision.

My next task was a Refactoring task. This was the first step in moving us into real projects. I was assigned to tickets/issues officially and was placed into the sprint.

From that point, I learned how ticket/issues are progressed, how to work in a sprint, how to make estimates, and more.

Our mentors encouraged us to question them freely. They emphasized that the dynamic relationship between them and us facilitated mutual learning. While they had experienced foundational changes, we were still in the early stages of our learning journey.

Our mentors created a comfortable environment for approaching them with questions and doubts we have. One mentor expressed a preference for hearing the phrase â€œI don’t know” over someone pretending to know everything and getting stuck midway.

That made me even more comfortable asking questions whenever I had one.

Software engineering is not just about coding and solving problems all day.

Recreational Room | Images by Cloud Solutions International

CSI has a dedicated room to make sure that their employee’s can relax their minds by engaging in some recreational activities.

By now, I’m pretty confident that your perception of what a software engineering internship is, has likely changed after reading this article so far.

Worklog

The intern champion collects a work log that includes the tasks we handled throughout the week. This is what it looks like.

I must say, documenting the activities we handled during a week is really useful, especially in this field and it is considered to be a good practice.

Tech Stack

The main technologies used at CSI in the software engineering department are shown in the image below.

The project management tool we use is JIRA and the version management tool is Bitbucket.

Technology stack | Software Engineering

Socialization

Another important aspect for me was the opportunity to meet and get to know new people during my internship period.

At CSI, I met a bunch of new people with beautiful souls and creative minds. Here, It is a blend of different cultures, which I found to be the most exciting. Because getting to know people from different cultures is the best way to learn about each other.

Here at CSI, I literally met people from all over Sri Lanka. I met people from Jaffna, Trincomalee, Nuwara Eliya, Matale, Galle, Kurunegala, and many other places.

Perks of doing an Internship at CSI

1. Learning Platform & Clouder Profile

CSI provides you with unlimited access to courses on Udemy to learn new technologies, sharpen your skills, and more.

Udemy

Clouder Profile let’s you track your own progress, so that you can develop your skills at your own pace.

Clouder Profile

2. Recreational Activities

I had the chance to participate in some of their exciting events, including the Halloween event ,â€˜à¶Žà·à¶Żà·”à¶»à·” à·ƒà·à¶ąà·Šà¶ąà·šâ€™ (Paduru Sajje) and Secret Santa.

Image by Diliru Nagahawaththa

3. Shuttle Service

I live very close to the office premises, but I have seen how other employees truly reap the benefits of using the shuttle service.

4. Hybrid Working Mode and Staff Lunch

You are required to work at the office only on Tuesday, Wednesday, and Thursday.

On these three days, you are provided with lunch and transport. How cool is that?

Mondays and Fridays you get to work from home.

5. A Cake for Your Birthday

This is one more example to show that CSI treats you equally, just like their employees. A cake is delivered right to your doorstep on your birthday with a beautiful note.

Cake & The Note by Cloud Solutions International

And that’s a wrap, folks. This isn’t an exhaustive documentation of my internship; instead, it’s a sharing of my experience with you.

How about you? Have you had a similar experience during your internship? I’d love to hear about it.

More Latest News

Django Dynamic Model Creation
Django Dynamic Model Creation
Why Create Models dynamically? Creating models dynamically can be helpful in situations where the database schema is not known at development time, or if it can change during runtime. Django allows us to define and manipulate database tables at runtime, which is quite different from the traditional approach of defining models statically in the code. […]
Read more
Difference Between @Mock and @MockBean in Spring Testing
Difference Between @Mock and @MockBean in Spring Testing
When writing tests in a Spring application, you may need to create mock objects to simulate the behavior of dependencies. Two common annotations used for this purpose are @Mock and @MockBean. Though they might seem similar, they serve different purposes and are used in distinct contexts. This article provides a detailed comparison between @Mock and @MockBean. Introduction to Mocking in Spring […]
Read more
Difference Between Mockito.when and when in Mockito
Difference Between ‘Mockito.when’ and ‘when’ in Mockito
When writing unit tests with Mockito, you may come across different ways to set up mock behaviors. This article will explore the differences between using 'Mockito.when‘ and ‘when' in your test code. Although both methods serve the same purpose, their usage can differ based on context and preference. Introduction to Mockito Mockito is a popular mocking framework for Java […]
Read more
Subscribe News Letter

Subscribe our news letter to get latest updates about our company and job openings. Keep in touch with us.