I have been a Software Engineering intern on the Content Search and Insights (CSI) team that works on the front-end of the Viva Topic pages, specifically on integrating topic pages in different Microsoft 365 products like Outlook, SharePoint, Teams, and others. My internship project was to create and integrate the first Viva Topic page summary, called a Viva Topic card, into Teams Mobile clients. I started with writing an engineering design document to explain my planned approach for the project. Then, I presented this design document to my team for approval of concept before I moved on to the development phase of the internship. My internship project was the first time working on a large mobile application development project. The main technologies used were React-Native, Typescript, Java, and Kotlin. Although I had basic understating with Java and React-Native, I had never worked with Kotlin. It was challenging to understand, debug, and code in programming languages I had little...
Prior to my internship, there was no implementation of my team’s feature in any mobile clients. This meant that if a customer used the feature in web or desktop Microsoft applications, they would not have the same user experience using Microsoft mobile applications. For example, in Microsoft Teams Web and Desktop, a Viva Topic in a chat conversation is formatted and made the topic clickable, yet the same Viva Topics show as plain text in Microsoft Teams Android and iOS. Lacking feature parity between web, desktop, and mobile clients of the same application is very frustrating to customers. My internship project implements the first mobile version of my team’s feature to support Viva Topics in mobile clients. I implemented the feature for Microsoft Teams mobile clients. I built a react-native component to support reusing the same feature across Android and iOS. Then, I added the Android native code to use the react-native component of the feature. Additionally, I will be adding ...
In my first semester at Berea, I took an Android phone application development course that was a project-based and student-led course between Berea and Codepath organization. This experience directly relates to my current internship since my project will contain a component of building an Android application using Java. Although I did not take a course that mainly used Java programming language, the projects I worked on in the Android development course helped me practice applying Java to mobile application development. Also, I have not found it hard to understand how different parts of the codebase work because Java is an Object-Oriented programming language like C++ which I used for my Data Structures and Algorithms course and in my internship project last summer. One new aspect of the Java code in my project codebase if that there are more access modifiers than in C++. Access modifiers are a set of keywords that specify where data or methods are accessible in a program. For ex...
Comments
Post a Comment