0% found this document useful (0 votes)
52 views

Summer Internship Report

The document provides a summary of an internship at MakeMyTrip as a backend developer. During the internship, the intern completed two hands-on projects: 1) Creating a Tic Tac Toe game using Python to strengthen programming skills and gain experience in game development. 2) Designing and developing a login page using Tkinter in Python to gain experience in GUI programming, enhance Python skills, and learn about user authentication. The internship focused on specializing in Python programming and SQL database management, with an emphasis on applications in the travel technology domain.

Uploaded by

Gaurav Rohilla
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
52 views

Summer Internship Report

The document provides a summary of an internship at MakeMyTrip as a backend developer. During the internship, the intern completed two hands-on projects: 1) Creating a Tic Tac Toe game using Python to strengthen programming skills and gain experience in game development. 2) Designing and developing a login page using Tkinter in Python to gain experience in GUI programming, enhance Python skills, and learn about user authentication. The internship focused on specializing in Python programming and SQL database management, with an emphasis on applications in the travel technology domain.

Uploaded by

Gaurav Rohilla
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 27

Summer Internship Report

on

Title of Project

Submitted by
Name: GAURAV ROHILLA
Roll No:21CSU246

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING,


SCHOOL OF ENGINEERING AND TECHNOLOGY

THE NORTHCAP UNIVERSITY


GURUGRAM-122017

Internship Period: 5/06/2023 TO 28/07/2023


Table of Contents
List of Tables
List of Figures
Abstract

During my internship at MakeMyTrip, a leading online travel platform, I underwent


comprehensive training as a Backend developer Intern. This abstract offers an overview
of the training experience, stressing essential characteristics such as the organizational
structure of the company, training objectives, activities, accomplishments, and personal
take aways.

As a Backend Developer intern, I was immersed in a collaborative environment,


working on cutting-edge projects and gaining hands-on experience in designing,
developing, and maintaining the backend systems that power MakeMyTrip's platform.
This internship offered me a unique chance to learn from experienced professionals,
apply theoretical knowledge to real-world scenarios, and make a meaningful impact on
the travel and technology industry.

The primary objective of the internship was to specialize in Python programming and
SQL database management, with a particular emphasis on their applications within the
travel technology domain. The internship aimed to enhance skills, understand industry
practices, and explore the integration of Python and SQL in travel technology solutions.

The specialized internship in Python and SQL at MakeMyTrip was a transformative


experience that equipped me with essential skills and insights. The integration of these
technologies within the dynamic travel industry underscored their relevance and
potential for innovation.
1. INTRODUCTION

This introduction provides an overview of the internship experience as a

Backend Developer at MakeMyTrip, a prominent online travel platform. The

internship spanned from 05 July 2023 to 28 August 2023, during which I delved

deep into the world of Python programming and its applications within the

dynamic landscape of travel technology.

The report delves into the comprehensive learning, practical exposure, and skill

development gained during the internship period.

MakeMyTrip is a pioneering online travel platform that offers a diverse range of

travel services, including flight and hotel bookings, holiday packages, and more.

With a strong commitment to technological innovation and enhancing user

experiences, MakeMyTrip has established itself as a leader in the travel and

technology sectors.

The primary objective of the internship was to gain hands-on experience and

insights into backend development within the dynamic context of a cutting-edge

travel technology platform. The internship aimed to provide a platform for

practical application of theoretical knowledge, collaboration with experienced

professionals, and contributions to projects that directly impact the user

experience.
2. PROBLEM STATEMENT

The challenge for a Backend Developer at MakeMyTrip is to design, develop,

and maintain robust and scalable backend systems that power the platform's

various services. The developer must tackle complex problems related to data

management, API integrations, performance optimization, and user experience

enhancement. These backend systems must handle a high volume of

transactions, ensure data security, and deliver real-time updates to users while

maintaining a responsive and seamless experience.

Scope of Work:

1. Database Architecture and Optimization

2. API Development

3. Scalability and Performance

4. Data Security

5. Error Handling and Logging

6. Third-party Integrations

7. Agile Development

Expected Outcome:

The Backend Developer is expected to contribute to the development and

enhancement of MakeMyTrip's backend systems, addressing challenges related

to scalability, performance, security, and user experience. By delivering efficient

and reliable backend solutions, the developer will play a crucial role in ensuring

that MakeMyTrip continues to provide exceptional travel services to its users.


3. SOCIAL RELEVANCE OF THE PROJECT

The fusion of Python programming and SQL queries in a backend developing project at

MakeMyTrip holds significant social relevance as it directly impacts the travel

experience of millions of users while contributing to the overall efficiency and

innovation within the travel industry. The project's combination of Python's versatility

and SQL's data management capabilities has far-reaching implications for users, the

industry, and society as a whole.

1. Enhanced User Experience:

The utilization of Python and SQL enables backend developers to create features that

enhance user interactions on the MakeMyTrip platform. Python-driven algorithms can

personalize travel recommendations, while SQL queries optimize search results, making

travel planning more efficient and tailored to individual preferences.

2. Seamless Booking Processes:

The integration of Python and SQL ensures seamless booking experiences for travelers.

Python's automation capabilities can facilitate smoother transitions between booking

stages, while SQL's data retrieval ensures swift access to available flights,

accommodations, and packages.


3. Data-Driven Decision Making:

Python's data analysis capabilities and SQL's efficient data retrieval empower decision-

makers at MakeMyTrip to glean insights from vast datasets. Informed decisions on

pricing, inventory management, and customer preferences not only benefit the business

but also contribute to improved user satisfaction.

4. Real-Time Information Sharing:

The synergy between Python and SQL allows for real-time updates on flight statuses,

hotel availabilities, and travel alerts. This ensures that users receive up-to-the-minute

information, enabling them to adapt to changing circumstances and make informed

travel choices.

5. Support for Sustainable Travel:

Efficient backend processes facilitated by Python and SQL contribute to reduced

processing times and energy consumption. This aligns with sustainable practices, as a

streamlined platform can potentially reduce server loads and minimize the platform's

overall environmental impact.

6. Customer-Centric Support:

The project's capabilities can expedite customer support services. Python-powered

chatbots can offer immediate responses to user queries, while SQL-driven data retrieval

equips support agents with relevant information, leading to quicker issue resolution and

improved user satisfaction.


7. Economic Growth and Innovation:

The project's impact on the user experience translates into customer loyalty, increased

bookings, and higher engagement. This generates revenue for MakeMyTrip, stimulates

economic growth, and fosters innovation within the travel and technology sectors.

In summary, the social relevance of a backend developer project combining Python and

SQL queries at MakeMyTrip is profound. The project's ability to personalize travel

experiences, streamline processes, and support sustainable practices aligns with the

company's commitment to enhancing user satisfaction while positively influencing the

travel industry and society at large.

3. TRAINING DESCRIPTION

# Created a Tic Tac Toe game :

During my training, I undertook a hands-on project focused on developing a

classic game of Tic Tac Toe using the Python programming language. This

endeavor allowed me to strengthen my programming skills, apply essential

algorithms, and gain valuable experience in game development.

The primary objective of the project was to create a functional and interactive

version of the Tic Tac Toe game using Python. I aimed to replicate the

traditional game's rules and mechanics while implementing a user-friendly

interface that allowed two players to compete against each other.

# Created a Login Page using Python :


I embarked on a practical project aimed at designing and developing a user-

friendly login page using the Tkinter library in Python. This undertaking

allowed me to gain hands-on experience in GUI (Graphical User Interface)

programming, enhance my Python skills, and understand the fundamentals of

user authentication and interface design.

The primary objective of this project was to create an interactive login page that

enables users to input their credentials for authentication. I used Python's Tkinter

library to design the graphical interface and incorporated functionality to handle

user inputs, validate credentials, and provide feedback based on authentication

outcomes.

Key Components of the Login Page:

1. User Interface Design: I designed the layout of the login page using Tkinter

widgets, including labels, entry fields, and buttons. The design aimed for a clean

and intuitive user experience.

2. Input Validation: I implemented logic to validate user inputs, ensuring that the

required fields were filled and adhered to specific criteria (e.g., minimum

password length).

3. Authentication Mechanism: I integrated logic to authenticate users by

comparing the provided credentials with stored username-password pairs.


Successful authentication granted access, while unsuccessful attempts triggered

error messages.

4. Error Handling: I incorporated error messages to inform users about incorrect

inputs or failed login attempts, enhancing user-friendliness and clarity.

5. Responsive Interaction: The login page provided real-time feedback to users

as they interacted with the interface, improving the overall usability.

During my training, I embarked on a project that focused on establishing a

seamless connection between SQL databases and Python. This comprehensive

endeavor involved creating multiple databases, designing tables, and executing

SQL queries within a webpage using a combination of Python and web

development tools. Through this project, I gained practical experience in

database management, SQL queries, Python programming, and web integration.

The core objective of this project was to showcase the integration of SQL

databases with Python and web technologies. I designed a dynamic webpage that

allowed users to interact with databases through a user-friendly interface. The

project encompassed the following key components:

1. Database Creation:

I created multiple SQL databases to simulate different scenarios or applications.

Each database represented a specific use case or context, demonstrating the

versatility of database management.


2. Table Design:

Within each database, I designed tables with relevant fields to store and organize

data. The tables were carefully structured to mirror real-world scenarios,

emphasizing proper data normalization.

3. Python Database Interaction:

I utilized Python libraries, such as SQLAlchemy, to establish connections with

the created databases. I incorporated CRUD (Create, Read, Update, Delete)

operations to interact with the tables, allowing for data insertion, retrieval,

modification, and deletion.

4. Webpage Interface:

Using web development tools like HTML, CSS, and JavaScript, I created an

interactive webpage that acted as a frontend for the database interactions. The

webpage featured input forms, buttons, and visualizations to facilitate user

interaction.

5. SQL Query Execution:

The webpage included a user interface for executing SQL queries. Users could

input custom queries, and the system would execute them on the corresponding

database, displaying results in a user-friendly format.

5. EXPERIMENTAL RESULTS (IF ANY)

6. ANALYSIS
Through this Training , I gained several valuable skills and insights:

 Python Programming: I honed my Python programming skills by implementing

game logic, data structures, and user input mechanisms.

 Algorithmic Thinking: Developing the winning condition checks and ensuring a

fair gameplay experience required algorithmic problem-solving skills.

 User Interaction: I learned to manage user input and interaction within the

context of a game, enhancing the overall user experience.

 Conditional Logic: Implementing the game's rules and deciding the outcome

based on different conditions improved my understanding of conditional

statements.

 GUI Programming: I gained practical experience in GUI programming using the

Tkinter library, learning to create windows, buttons, labels, and entry fields for

interactive user interfaces.

 User Input Management: I learned how to capture and manage user inputs

effectively, validating them to ensure data integrity and user satisfaction.

 Error Handling: Implementing error handling mechanisms for incorrect inputs

enhanced my understanding of user experience design and troubleshooting.

 User Authentication: I gained insight into the implementation of basic user

authentication mechanisms, a fundamental concept in software development.

 Database Management: Creating and managing SQL databases, designing tables,

and understanding normalization principles.

 SQL Query Execution: Crafting and executing SQL queries to manipulate and

retrieve data from the databases.


 Python Integration: Establishing connections between Python and databases,

incorporating libraries for database interaction.

 Web Development: Designing a dynamic webpage with HTML, CSS, and

JavaScript to provide an interactive user interface.

 Practical Application: Applying theoretical concepts to real-world scenarios,

fostering a deeper understanding of database-driven applications.

6. CONCLUSION

My internship at MakeMyTrip was an invaluable experience that significantly

contributed to my personal and professional growth. The exposure to real-world

projects, the nurturing environment, and the insights gained into the travel technology

sector have equipped me with the skills and knowledge necessary to embark on a

successful career journey.

Creating the Tic Tac Toe game using Python was a rewarding experience that allowed

me to put my programming skills into action. The project not only enhanced my Python

proficiency but also introduced me to the world of game development and problem-

solving. This project forms a solid foundation for future endeavors in programming and

software development.

Creating a login page using Python and Tkinter was a rewarding endeavor that provided

me with valuable exposure to GUI programming, user interaction, and authentication

mechanisms. This project contributed to my practical programming skills and provided

a stepping stone for further exploration in interface design and application development.
The skills acquired in this project are applicable in a wide range of software

development scenarios.

Creating a connection between SQL databases, Python, and web development

showcased my ability to integrate various technologies into a cohesive project. This

project not only enriched my technical skills but also demonstrated the value of data

management, user interaction, and backend development. The project serves as a

foundation for more complex applications that involve data storage, retrieval, and

dynamic user interfaces.

BIBLIOGRAPHY

1. **"Clean Code: A Handbook of Agile Software Craftsmanship"** by Robert C.

Martin

- This book emphasizes writing clean, maintainable, and efficient code, which is

essential for backend development.


2. **"Designing Data-Intensive Applications: The Big Ideas Behind Reliable,

Scalable, and Maintainable Systems"** by Martin Kleppmann

- This comprehensive guide explores the principles behind designing data-

intensive applications, which is crucial for backend developers dealing with large

datasets.

3. **"SQL Performance Explained"** by Markus Winand

- Backend developers frequently interact with databases, making this book

valuable for understanding SQL performance optimization techniques.

4. **"Python Web Scraping Cookbook"** by Michael Heydt**

- Backend developers may need to retrieve data from various sources. This book

provides insights into web scraping techniques using Python.

5. **Online Resources:**

- Platforms like Stack Overflow, GitHub, and online developer communities offer

a wealth of information, discussions, and code samples relevant to backend

development.

APPENDIX
Project Daily Task
Date Day Work
19th may,2016 Monday Project alloted- IT ASSET
MANAGEMENT ; studied about GLPI
and PHP modules
20th may,2016 Tuesday WAMP server installation, GLPI
installation, configurations
21st may,2016 Wednesday PHP and MySQL connectivity; made a
table using phpmyadmin and mysql
22nd may,2016 Thursday backup and recovery of GLPI
helpdesk of POWERGRID
23rd may,2016 Friday Free
26th may,2016 Monday Study of Ticket Management System
in GLPI; creation of new user in GLPI
27th may,2016 Tuesday Editing and study of the php pages of
the GLPI tickets and users and their
forms; php mini website on Video
Conference
28th may,2016-30th may,2016 Wednesday-Friday Free
2nd june,2016 Monday making of mini website in php
(display information in grid form by
selecting region and location)
3rd june,2016 Tuesday php website on VC modified to 4
pages with more linking of pages
dynamically
4th june,2016 Wednesday php website on VC progressed
further more

…………….. …………………….. …………………………………………………………

…………….. …………………….. …………………………………………………………

…………….. …………………….. …………………………………………………………

…………….. …………………….. …………………………………………………………

…………….. …………………….. …………………………………………………………

…………….. …………………….. …………………………………………………………

…………….. …………………….. …………………………………………………………

…………….. …………………….. …………………………………………………………

You might also like