Software Engineer at GITS Indonesia
Hello everyone, my name is Affan Maulana, and I am a student majoring in Informatics Engineering at the University of Lampung. I want to briefly share my internship experience at GITS Indonesia. Previously I had taken the sixth semester and was looking for an internship opportunity. I searched for information and applied to several internship partner companies through the Merdeka Campus.
Merdeka Campus is a program launched by the Ministry of Education and Culture of the Republic of Indonesia. This program aims to empower tertiary institutions and create an educational atmosphere that is more creative, innovative and responsive to societal needs and global challenges. This program also provides various student exchange schemes, internships, or collaborations to broaden students’ insights and experiences.
At first, I signed up for internships at many companies that opened Front-end Web Developer vacancies. Why? Because basically, my background is front-end, and I have studied this field for a long time. However, after waiting about a month, I have not accepted anyone as a potential apprentice. I even attended regular lectures because I thought I failed to register for an internship at the Merdeka Campus.
But on the last day of closing, the writer received good news from PT GITS Indonesia partners. The good news is the author got an email to test the Software Engineer position. After that, I worked right then and there until the last second. Thank God I finally completed my Software Engineer internship at a well-known IT company, GITS Indonesia. What is a Software Engineer?
Software engineers are professionals involved in developing, designing and maintaining software. The duties of a software engineer include analyzing business or user requirements, designing efficient software solutions, writing program code, testing software to ensure its quality, and maintaining the software after it is released. Software engineers in the website criteria at GITS companies are divided into two parts: Front-end and Back-end. The front end is tasked with creating a website interface that facilitates users to use the website and find information easily.
To become a front-end developer, mastery of at least 3 programming languages is required: HTML, CSS and JavaScript. Apart from that, the front end must also ensure a responsive display on the website. Thus, regardless of the device used, the website’s appearance will look neat and can be adjusted according to the device’s screen size. Therefore, the front end must also be able to use frameworks such as Angular, Vue, React, and so on.
The framework used by GITS is Vue. Therefore, at the start of the internship, the first task was to study the Vue and Nuxt frameworks and create a portfolio website. During this process, I was guided by two mentors, Warsono and Rofi, to learn Vue. Vue is a progressive framework designed to build user interfaces. Compared to other monolithic frameworks, Vue was developed for gradual adoption.
The main focus of this library is on the view layer, and it is easy to integrate with other libraries or existing projects. As a newcomer to Front-end development, Vue.js has managed to top the Front-End Frameworks list, equaling or surpassing the popularity of well-known frameworks like React and Angular. Then, why do people choose Vue as a front-end framework over its two predecessors? Vue.js is simpler and less complicated than other front-end frameworks, from short syntax, easy data binding, strong two-way data binding, and Vue components to easy integration with back-end frameworks.
Flexible: Vue allows building applications on a small to large scale. Small apps can be created quickly and run right in the browser, or very complex apps using ES6, Vuex, components, and routing. Vue.js has complete, detailed, easy-to-understand documentation with sample code and results. Apart from that, Vue also has a solid and growing developer community. Vue uses modern technologies, libraries and tools like ES6, Webpack, Vuex and. Since its launch, the Vue ecosystem has been strong, including references, tutorials, libraries, and jobs for Vue.js developers.
That’s why GITS uses the Vue framework and has been using the Vue framework for a long time since 2018. Vue is the main framework because it meets the needs of GITS companies. Technically possible due to simplicity, flexibility and suitability for developers of all levels. Vue has a weakness in its very fast development. While this can be considered good, it can also hinder developers.
Continuous development requires developers to always learn and adapt to the latest updates that appear quickly. In addition, VueJS lacks plugins, and some of the existing plugins may not be compatible with your Vue version due to the very fast development. Nuxt 3 is here to solve these problems. Nuxt 3 or Nuxt.js 3 is a Vue.js framework built to facilitate the development of Vue. Js-based applications.
By using Nuxt 3, manual configurations such as Router configuration, State Management, SSR, Web Vitals, PWA, and so on no longer need to be done. The advantages of Nuxt 3 include providing features that make applications more scalable and easy to develop and help improve the performance of Vue.js in dealing with complex and large applications. Nuxt 3 also provides Vuex, a state management library that helps organize data in applications, and SSR support by default, which helps improve first-page rendering speed and aids in SEO. I continued to learn about basic Vue and Nuxt concepts such as components, props, state, and routers.
Even though it was a bit difficult at first, I finally managed to complete the task by continuing to practice and asking seniors. After completing the materials and assignments regarding Vue and Nuxt, I was transferred to the WordPress division for about two months. I was responsible for making the Hitopia and Event Summit landing page websites there. I am not alone here, I am accompanied by a great mentor, Mas Ardi, and two great colleagues, Helda and Wulan.
The three of us created a website from the beginning of the design process, from writing documentation to slicing it into WordPress. We started learning how to create a website using the WordPress CMS, including setting up themes, plugins and widgets. Apart from that, I also learned about SEO so that websites can be found more easily by search engines and visitors. In the end, the website we worked on was completed, and the following are the results.
Hitopia (https://hitopia.id/)
Digits Event Summit (https://fmcg.digits.id/)
Overall, I didn’t experience any significant problems with the WordPress division. After completing my assignment in the WordPress division, I was transferred to the My Pertamina project in the unit testing section. Here, I was guided by Mr Rofi and my friend Eldrian. We are responsible for testing the features made by the development team. This task is very important because product quality depends on the success of the testing carried out.
I learned about various techniques and tools for unit testing, like Jest. During my internship, I learned a lot and gained valuable experience in software engineering. I also learned about teamwork, effective communication, and problem-solving. Thank you to the mentor team, Mr Doko and my colleagues at the company who have helped and provided valuable lessons during my internship. This experience will be invaluable for my future career development.
That’s all for sharing a glimpse of the internship experience at PT GITS Indonesia, thank you. See you again …..