Patel Vishu: Online Job Portal
Patel Vishu: Online Job Portal
INTERNSHIP REPORT
Submitted by
Patel Vishu
200750116017
BACHELOR OF ENGINEERING
In
Information Technology Department
Shankersinh Vaghela Bapu Institute of Technology, Gandhinagar
out by Vishu Patel (200750116017) under my guidance in partial fulfilment for the degree of
Bachelor of Engineering in Information Technology, 8th Semester the academic year 2023-2024
and his/her work is satisfactory. This student has successfully completed all the activity under my
I have taken efforts in this Internship. However, it would not have been possible without the
kind support and help of many individuals and organizations. I would like to extend my sincere
thanks to all of them.
I am highly indebted to Mr.Pragnesh Trivedi for their guidance and constant supervision as
well as for providing necessary information regarding the Internship. I take this opportunity to
thank all my friends and colleagues who started me out on the topic and provided extremely
useful review feedback and for their all-time support and help in each and every aspect of the
course of my project preparation. I am grateful to my college Gandhinagar Institute of
Technology, for providing me all required resources and good working environment.
I would like to express my gratitude towards Head of Department, Prof. Samina Mansuri,
H.O.D for her kind co-operation and encouragement which help me in this Internship.
Thank You
Vishu Patel
iii
[Industry Certificate]
(If student has done internship)
DECLARATION
We hereby declare that the Internship report submitted along with the Internship entitled
Java(Online Job Portal) submitted in partial fulfillment for the degree of Bachelor of Engineering
in Information Technology to Gujarat Technological University, Ahmedabad, is a bonafide record
of original project work carried out by me at Skytech Pvt. Ltd. under the supervision of
Mr.Pragnesh Trivedi and that no part of this report has been directly copied from any students’
reports or taken from any other source, without providing due reference.
Kindly find the two content.1st is for Internship and 2nd is for Project. Make the report
accordingly your project/internship definition.
Internship Content
Title Page I
Certificates(College) II
Certificates(Company) III
Acknowledgement IV
Content V
List of Figures VI
1 Introduction 1
1.1 Internship Summery /Introduction of Company
2 Introduction to Internship
3 Internship Implementation
5 Testing
6 Outcomes
7.1 Conclusion
8 References
Project Content
Title Page
Acknowledgement I
Declaration II
Abstract III
Contents VII
Chapter 1 Introduction
1.3 Purpose
1.4 Scope
1.5 Objective
3.5 E R Diagram
Chapter 4 Design
4.1 System Flow Diagram
Chapter 5 Implementation
Chapter 6 Testing
8.1 Conclusion
Appendix A Annexure 2
References
ix
GIT_IT_24_IG76
Chapter: 1
Introduction
1. Internship Summery
• In this internship I worked as an Java Developer at Skytech Pvt. Ltd. for this
internship I Learned so many features of Java. I learn different technologies like
Java, RestApi, database, Spring-boot web Services and etc.
• Overall, my internship at Skytech Pvt. Ltd. was a valuable learning experience.
• I was able to develop new skills and gain practical experience in the field of
software development.
• I am grateful for the opportunity to have interned at such a successful and dynamic
company.
3. Organization Intro
Chapter: 2
1. Internship summary
1. Java
• Eclipse IDE is a leading integrated development environment popular for Java and
other languages. It offers robust tools for coding, debugging, and project
management. With its extensible architecture and rich plugin ecosystem, Eclipse
enhances productivity and supports diverse development needs.
• Extensible Architecture: With its modular design, Eclipse supports a wide range of
plugins and extensions, allowing developers to customize and enhance the IDE
according to their specific requirements.
• Code Assistance and Refactoring: Eclipse offers intelligent code completion,
navigation, and refactoring tools that help developers write cleaner, more efficient
code and improve code quality.
• Cross-Platform Support: Eclipse is compatible with multiple operating systems,
including Windows, macOS, and Linux, ensuring consistent performance and user
experience across different platforms.
4. Internship Planning
Internship Implementation
1. Weekly Task
• Spring Overview: Understanding the core principles and benefits of the Spring
Framework in modern application development.
• Dependency Injection (DI): Learning the concept of Inversion of Control (IoC)
and how DI simplifies object creation and management.
• Spring Beans: Exploring the concept of Spring beans and their lifecycle,
configuration using XML and annotations.
• Aspect-Oriented Programming (AOP): Introduction to AOP concepts like
advice, pointcuts, and weaving in Spring applications.
• Spring MVC: Understanding the Model-View-Controller architecture and
building a basic Spring MVC web application.
• Spring Data Access: Learning about Spring's support for JDBC, JPA, and data
access templates for efficient database interaction.
• Spring Transactions: Implementing transaction management in Spring
applications to ensure data integrity and consistency.
• CRUD Operations with Spring Data JPA: Implementing Create, Read, Update,
and Delete operations using JpaRepository methods.
• Auditing with Spring Data JPA: Implementing entity auditing using audit
annotations to track and update entity audit fields.
• Integration with Spring Boot: Integrating Spring Data JPA with Spring Boot
applications using Spring Boot Starter Data JPA and building a comprehensive
application.
Week 6: 26/02/2024 – 01/03/2024
• RESTful Web Services with Spring MVC: Exploring RESTful principles and
building RESTful APIs using Spring MVC annotations.
• Content Negotiation: Understanding content negotiation in Spring MVC to
support multiple formats like JSON, XML, and more.
• Interceptors and Filters: Implementing interceptors and filters to preprocess and
postprocess requests and responses in Spring MVC.
• Internationalization and Localization: Implementing internationalization and
localization in Spring MVC for supporting multiple languages and locales.
• Handling File Downloads: Learning techniques for streaming and downloading
files in Spring MVC applications.
• WebSockets Support: Exploring Spring's WebSocket support to build real-time
communication features in web applications..
• Data Model Creation: Designed and implemented entity classes to define the
data structure for the CRUD operations.
• Database Integration: Integrated Spring Boot with Spring Data JPA for
seamless database interactions and CRUD operations.
• Login Page Design: Created a login page with HTML, CSS, and JavaScript.
• Signup Page Design: Developed a user-friendly signup page with frontend
form validation.
• User Authentication Flow: Integrated login and signup pages with backend
API endpoints for secure authentication.
• View Job Page Design: Developed a dynamic job listing page displaying
fetched job details.
• Dynamic Job Listing Display: Integrated view job page with backend API to
fetch and display job listings.
• Navigation and Routing: Implemented client-side routing for seamless page
transitions and user navigation.
• State Management for Job Data: Managed job listing state using state
management libraries or patterns.
Design
Testing
1. Testing Planning
• A test plan is an important part of the software development life cycle, and it
serves asa blueprint for the testing process. Understanding how to do this can help
you simplifythe testing process and provide you with a general template for future
projects.
• Describe the scope of a test, which can help the focus on testing specific features.
Explain the tools and resources that can gather before initiating testing.
• Define each team member's role and responsibilities. Ensure the final software
productmeets its requirements and achieves the desired results.
With all the impending issues, web app testing holds more importance than ever.
However, testing a web application is not just an ordinary task, and depends on
several factors such as compatibility across various browsers, application
performance, user experience, user acceptance, ensuring proper security, etc. that
can perform testing using different kinds of the method which make your software
quality assurance.
Unit Testing:
• Unit tests are usually automated and are designed to test specific parts of the
code, suchas a particular function or method.
• Unit testing is done at the lowest level of the software development process,
where individual units of code are tested in isolation.
Integration Testing:
• The focus of the integration testing level is to expose defects at the time of
interaction between integrated components or units.
• Unit testing uses modules for testing purpose, and these modules are combined
and tested in integration testing. The Software is developed with a number of
software modules that are coded by different coders or programmers. The goal
of integration testing is to check the correctness of communication among all
the modules.
2. Test Result & Analysis
The required correct output was achieved when all the inputs were valid, and the
computations were correctlydone for those inputs. A warning or prompt asking
user to takeanother look at the input and enter another valid input or warning them
of some other process facing issues due to current input being provided.
Outcome
1. Conclusion
• It has been a great pleasure for me to work on this exciting and challenging
project. This project proved good for me as it provided practical knowledge of not
only programming in Java Development but also about all handling procedure
related with Device Inventory”.
• It also provides knowledge about the Java related technologies used in developing
APIs and client server technology that will be great demand in future. This will
provide better opportunities and guidance in future in developing projects
independently.
2. Internship Summary
• During the internship, I had the opportunity to learn a variety of new skills. These
included content writing, error solving, and time management.
• Multiple problems were faced during the development of the project. The
problems occurred due to various reasons and hence each problem had to be
tackled in its own way.
• The following problems were faced by us during the developmental stages of the
project and the solutions we came up with to deal with those problems.
• Lack of Communication: There were periods during the project development
where lack of communication almost ruined all the progress made till that date.
This could’ve been either between us and the client or in our own company as
well.
• Solution: To tackle such problems, we set-in place regular fortnight meetings with
the client and even started having regular check-ins and weekly discussion
sessions with our lead/manager as well as among us three.
• Unrealistic Deadlines: During the mid-stages of the project development, we had
a series for missed deadline periods wherein the goals were just too hard to
achieve in the given timeframe because of all the delays faced in the initial stages
of the project.
• Solution: To achieve our final goal in the given timeframe after dealing with all
the past missed deadlines of milestones, we gave in extra workhours and even
monitored all the remaining deadlines for other upcoming milestones and prepared
well in advance for their completion and just followed the procedure for efficient
workflow.
• Lack of Accountability: During the mid-stages of the project development we
had a string of incidents wherein one wrong code was by mistake pushed on
development branch by someone and no one could track who it was or where it
came from on that branch because laptops were often shared and worked on
together and more often than not more than one person would be working together
Limitations:
• Database: Use the MySQL for the database connection of this web application
and not use the proper database that can handling all type of requests that we
do with the firebase for that we can use the API.
• User Interface: there is some kind of problem in the user interface so we can
do some improvements in the user interface.
Future Work
References
1. Bibliography
1. https://javatpoint.com/
2. https://docs.oracle.com/en/java/
3. https://dev.mysql.com/doc/
4. https://www.geeksforgeeks.org/java-tutorial/
5. https://www.w3schools.com/Java/
6. https://www.mysql.com/
7. https://stackoverflow.com/