Internship, Report
Internship, Report
i
ii
ACKNOWLEDGEMENT
First of all, we would like to thank the Almighty God for keeping us alive to be able to work
until this day as interns in eTech. Secondly, we would like to give our greatest gratitude for
our families for the support and care they have given us. Then I would like to thank staff of
etch Mr. YOHANNES for making it possible to gain plenty of knowledge in this constricted
period of practice during my internship. Our great gratitude also goes to our advisor Mr.
ISAYAS for helping us how we accomplished the activity in the duration of our stay. At the
last, we would like to thank all the staff members of eTech solution .
i
Executive Summary
My internship at Etech Solutions, which spanned from [may] to [August], was a valuable
learning experience that helped me gain hands-on knowledge in software development.
The primary objective of this internship was to enhance my skills in JavaScript and
Angular while contributing to live projects within the company.
Etech Solutions is a leading software company specializing in web and mobile application
development. I worked within the IT department, particularly with the software
development team, where I was involved in building front-end components for web
applications and resolving bugs in existing code.
My key responsibilities included coding, debugging, API integration, and collaborating with
team members to optimize various features of the application.
Throughout the internship, I acquired crucial skills such as JavaScript development, API
integration, debugging, and a deeper understanding of the Angular framework.
I also learned to use version control (Git) effectively and enhanced my teamwork,
communication, and problem-solving abilities.
Despite the fast-paced environment, I adapted quickly and successfully overcame challenges,
such as understanding complex codebases and debugging issues. With guidance from my
supervisors and through independent study, I was able to contribute meaningfully to the
project's success.
ii
Table of Contents
ACKNOWLEDGEMENT .............................................................................................................................. i
Executive Summary................................................................................................................................. ii
CHAPTER ONE ......................................................................................................................................... 1
1. Introduction .................................................................................................................................... 1
CHAPTER TWO ........................................................................................................................................ 6
2.1 Overview of the Organization ........................................................................................................... 6
2.2 Mission and Vision ........................................................................................................................ 7
2.3 Commitment to Ethical Business Practices ................................................................................... 7
2.4 Products and Services at eTech .................................................................................................. 10
2.5 Organizational Structure and Hierarchy at eTech....................................................................... 13
2.6 The organizational structure of the company can be depicted as shown .................................. 16
CHAPTER THREE .................................................................................................................................... 17
3. What I have learned ? ................................................................................................................... 17
CHAPTER FOUR ..................................................................................................................................... 22
4. Challenge and Contribution (project) ............................................................................................... 22
4.1 challenges and contribution ....................................................................................................... 22
CHAPTER FIVE ....................................................................................................................................... 28
5. Recommendations and Conclusion................................................................................................... 28
5.1 Overall Conclusions ..................................................................................................................... 28
5.2 Recommendations for Future Internships: ................................................................................. 29
Summary ....................................................................................................................................... 30
References ............................................................................................................................................ 31
iii
iv
v
i
CHAPTER ONE
1. Introduction
The primary objective of the internship was to expose interns to real industry challenges,
processes, and practices while fostering technical growth and enhancing problem-solving
skills. At eTech Solutions, I was part of a dynamic development team that adhered to agile
methodologies. This gave me insights into how software development is managed in an
organized and iterative fashion, including exposure to sprint planning, task breakdown, and
daily stand-up meetings. Each aspect of the internship aimed to simulate the responsibilities
of a full-time developer, preparing me for the realities of working in the tech industry.
The internship involved a variety of tasks, ranging from developing new features to
identifying and fixing bugs within existing systems. The primary technologies I used were
JavaScript, Angular, and associated tools for building modern web applications. I learned
how to navigate through large codebases, understand project structures, and contribute
effectively as part of a team. Working alongside senior developers provided mentorship
opportunities, where I gained feedback on my code and learned best practices for
maintainable and readable code.
One of the key aspects of the internship was the development of both technical and soft skills.
On the technical side, I enhanced my knowledge of JavaScript and gained a solid
understanding of Angular, including concepts such as components, services, directives, and
reactive forms. I also learned to use Git for version control, which is crucial for team-based
development, ensuring seamless collaboration and proper code management.
On the soft skills side, I was able to build my communication and teamwork abilities.
Participating in meetings and discussions helped me understand the importance of clearly
1
articulating ideas, asking the right questions, and effectively presenting my work. This
experience also taught me how to manage my time effectively to meet deadlines, break down
complex tasks into manageable units, and seek help whenever I encountered challenges.
Throughout the internship, I worked on projects that aimed to improve the user experience of
web applications. I contributed to feature development, worked on front-end user interface
improvements, and collaborated with backend developers to ensure the consistency of data
flow and integration. Each of these activities provided me with a holistic view of full-stack
development, even though my focus was on the front end.
In addition to gaining technical skills, I also learned about the broader workflow of software
development projects, including requirement gathering, design considerations, testing, and
deployment. Being involved in these stages gave me an understanding of the full lifecycle of
a project and the level of collaboration required across different roles in the organization.
Overall, the internship at eTech Solutions has been a transformative experience that has
enhanced my skill set, provided me with a realistic view of software engineering, and
motivated me to keep learning. The combination of technical challenges, collaborative
teamwork, and exposure to industry best practices has prepared me for future roles and
helped me grow both as a developer and as a professional.
2
feedback loops served as a direct source of data that helped me understand how to improve
the quality of my work and align with the team's standards.
In conclusion, the combination of primary and secondary data collection methods ensured
that I had a thorough understanding of both user needs and technical requirements. This
approach allowed me to actively participate in the development process and contribute to the
task effectively.
3
set specific goals for improvement, both during the internship and for future
development.
Using SWOT analysis during my internship gave me a clear framework for reflecting on my
progress. It allowed me to systematically evaluate my skills, determine how to capitalize on
the learning environment, and work on overcoming my weaknesses and potential challenges.
Ultimately, the SWOT analysis served as a valuable tool to enhance my learning experience
and shape my future career development.
The purpose of using a SWOT analysis during my internship at eTech Solutions was to
evaluate my overall experience systematically and identify key aspects of my professional
development. By categorizing my strengths, weaknesses, opportunities, and threats, I was
able to gain a clearer understanding of my capabilities, areas needing improvement, growth
opportunities, and potential challenges in the professional setting.
2. Leveraging Opportunities: Throughout the internship, the analysis provided insights into
opportunities available to me, such as learning from senior developers, participating in real-
4
world projects, and expanding my knowledge of software development methodologies.
Recognizing these opportunities enabled me to make the most of my time at eTech Solutions.
3. Managing Threats and Challenges: The SWOT analysis also allowed me to anticipate
and address potential challenges, such as keeping up with the pace of tasks or the pressure of
unfamiliar technologies. This proactive approach helped me strategize effectively, ensuring
that I could adapt and learn continuously.
Overall, using a SWOT analysis during my internship provided a framework for self-
reflection, enabling me to take ownership of my learning journey, maximize growth, and
build a roadmap for future development.
The scope also included gaining exposure to agile development practices, where I
participated in sprint planning, daily stand-ups, and review meetings. This provided insights
into how software teams collaborate to achieve milestones effectively. Additionally, I learned
about the complete software development lifecycle—from understanding project
requirements to designing, testing, and deploying features.
In summary, the scope of the internship covered both the technical and non-technical aspects
of software development, preparing me for the professional challenges ahead by giving me
hands-on experience, insights into industry practices, and opportunities to contribute to real
projects.
5
CHAPTER TWO
eTech Solutions places a strong emphasis on using modern tools and technologies. As part of
the development team, I primarily worked with JavaScript and Angular, which are core
technologies in many of the company’s web development projects. The company’s focus on
agile methodologies also meant that I was exposed to practices such as iterative development,
frequent code reviews, and continuous feedback, which are crucial in producing high-quality
software.
Overall, eTech Solutions is committed to building innovative solutions and cultivating talent,
making it a great place for interns to gain real-world experience and develop professionally.
Founding of eTech
6
The idea of eTech was officially conceived on May 16, 2020, when the founding members,
including ten technological experts, held their first virtual meeting. At the time, the world
was grappling with the global COVID-19 1ipandemic, and the meeting addressed how eTech
could support Ethiopians, particularly those in rural areas.
One of the primary goals was to explore ways to assist communities with limited access to
essential resources such as food, banking services, and markets, as well as those working
under difficult economic condition.
The founding members of eTech believed in using technology as a force for good,
envisioning solutions that could address the challenges of rural communities by improving
access to critical services and empowering underserved populations. This focus on social
responsibility sets eTech apart, as it aims not just for technological excellence, but for making
a positive impact on society.
7
respect and understanding. eTech's ethical approach sets it apart in a business landscape
where short-term gains often overshadow long-term trust.
8
4. Agile Development Practices
eTech Solutions followed agile methodologies, and as an intern, I actively participated in
agile processes. This included attending daily stand-up meetings, participating in sprint
planning, and contributing to retrospective discussions. These activities taught me how
software projects are managed iteratively, how tasks are broken down into smaller units,
and how the team collaborates to meet goals within specific timeframes. I also worked
with tools like Jira for task management, helping me understand how work is tracked and
prioritized in agile environments.
8. Project Documentation
Documenting the work I did, such as feature implementation details and technical
challenges encountered, was also an important part of my activities. Documentation is
essential to ensure that future team members can understand the purpose and functionality
9
of the code. By writing documentation, I improved my ability to convey technical
information clearly and effectively, making it easier for others to understand the code and
processes I worked on.
Overall, the activities at eTech Solutions covered the complete spectrum of the
software development process, from requirement analysis to feature development,
testing, and deployment. These experiences helped me develop a solid foundation in
both technical and soft skills, making the internship a holistic learning experience
that has prepared me for future challenges in software engineering.
10
performing applications that solve complex business problems. The technologies
employed span a wide range, including JavaScript, Angular, Python, .NET, and
more, allowing eTech Solutions to create diverse solutions ranging from web and
mobile applications to desktop software.
11
technology effectively. The company's consultants work closely with clients to
understand their business challenges, analyze existing systems, and propose
technology-driven solutions that lead to improved productivity and competitiveness.
Digital transformation services are a major focus, where eTech Solutions aids
organizations in modernizing their legacy systems, automating manual processes, and
adopting cutting-edge technologies such as artificial intelligence (AI), Internet of
Things (IoT), and machine learning to drive business innovation.
12
Enterprise Solutions
eTech Solutions also specializes in developing enterprise-level software solutions
tailored to the unique needs of large organizations. These solutions can include
enterprise resource planning (ERP) systems, customer relationship management
(CRM) tools, and supply chain management (SCM) systems. The team works with
businesses to create integrated platforms that streamline operations, enhance
productivity, and provide real-time insights through powerful analytics and data
visualization capabilities.
1. Senior Management
The senior management team at eTech Solutions oversees the strategic direction of the
company. It consists of key decision-makers who ensure that the company meets its business
13
objectives while staying aligned with industry trends and technological advancements. This
level includes:
Chief Executive Officer (CEO): Responsible for the overall leadership, strategic
direction, and performance of the company.
Chief Operating Officer (COO): Manages day-to-day operations, ensuring that all
departments are functioning efficiently and effectively.
2. Department Heads/Directors
Each functional department at eTech Solutions is led by a department head or director who
oversees operations in their specific domain. These roles include:
Director of Software Development: Leads the development teams, sets goals for
software delivery, and ensures adherence to development standards.
Director of Quality Assurance: Ensures that all products meet quality standards,
oversees the QA teams, and manages testing processes.
3. Project Managers
Project managers are responsible for managing specific projects within eTech Solutions.
They are key players in the agile process, planning sprints, coordinating with development
teams, and ensuring that projects stay on track in terms of budget, schedule, and quality.
Project managers work closely with both clients and internal teams to define requirements,
set goals, and manage communication.
4. Team Leads
Team leads play a crucial role in managing the day-to-day activities of the development and
QA teams. They provide guidance to junior developers, ensure that development standards
are met, and help resolve any technical challenges that arise. Team leads often serve as the
14
bridge between developers and project managers, ensuring that tasks are assigned correctly
and delivered on time.
5. Development Teams
The development teams consist of software engineers with different levels of expertise:
QA Leads: QA leads manage testing teams, create test plans, and ensure adherence to
quality standards.
15
clients, understanding their needs, and ensuring that the project scope is well-defined. They
also help prioritize features and ensure that the final product meets client expectations.
16
Chief Executive
Officer (CEO):
Project
Department Managers
Heads/Directors
Team Leads
Quality
Assurance Team
Development
Team
UI/UX Designe
team Product Manager
IT Support
Human
Resources
17
CHAPTER THREE
3. What I have learned ?
3.1 Duration of internship.
My internship at eTech Solutions spanned a period of four months, beginning on May 1st
and concluding on August 30th. During this period, I had the opportunity to immerse myself
in various task, apply theoretical knowledge in practical settings, and gain hands-on
experience primarily with JavaScript and Angular. The internship provided a structured yet
flexible timeframe, allowing me to grow both technically and professionally."
18
3. Angular Component Development:
As part of the frontend development, I used Angular to build components for the web
application. These components were developed to be reusable and modular, breaking down
the UI into smaller, maintainable parts. I also worked on Angular's template syntax, which
involved data binding, looping through dynamic data, and managing state within the
components.
19
with other developers effectively. My activities included creating branches for new features,
committing changes, and merging code with the main repository. I also resolved merge
conflicts when working on shared files, gaining valuable experience in managing code
changes in a team environment.
Overall Experience
My internship at eTech Solutions was a highly enriching and transformative experience that
allowed me to grow as both a professional and an aspiring software developer. Spanning
from May to August, this internship offered me an opportunity to work in a real-world
software development environment where I could apply my academic knowledge to practical
problems, learn from experienced professionals, and gain a comprehensive understanding of
the technology industry.
20
I gained extensive experience with Angular, learning about its component-based architecture,
data binding, services, and routing. The hands-on experience with JavaScript also helped me
improve my understanding of the language, particularly in manipulating the DOM, handling
events, and writing asynchronous code.
Collaborative Team Environment: One of the most valuable aspects of my experience was
the exposure to teamwork and collaboration. I was assigned to a team of frontend developers
who were very supportive and willing to guide me whenever I faced challenges. Participating
in team meetings, stand-ups, and code reviews gave me a taste of agile development practices
and highlighted the importance of effective communication in a software project. Through
these interactions, I gained an understanding of how tasks are divided, dependencies
managed, and how critical feedback is provided constructively.
Mentorship and Guidance: Throughout the internship, I had the opportunity to receive
guidance from senior developers who acted as my mentors. They not only provided technical
guidance but also shared insights into industry standards, best practices, and common pitfalls
in software development. The mentorship I received made me more confident in my coding
skills and introduced me to new ways of thinking about software architecture and problem-
solving.
Challenges and Learning Opportunities: The journey was not without challenges. I faced
difficulties initially in understanding the complexities of the Angular framework and
debugging certain aspects of the application. However, these challenges proved to be some of
the most rewarding experiences, as they pushed me to research independently, seek help
when needed, and learn to think critically about software solutions. I learned that
development involves much trial and error, and the ability to persevere through obstacles is a
critical skill.
One notable challenge I faced was working with APIs, especially in handling errors and edge
cases effectively. Through debugging and collaborating with the backend team, I developed a
better understanding of how frontend and backend systems interact, and how to ensure that
data flows seamlessly between them to provide a smooth user experience.
Technical and Soft Skill Development: Technically, I gained expertise in Angular, learned
how to integrate APIs, and strengthened my understanding of JavaScript and CSS. I also
became familiar with using Git for version control, which is an essential skill for working in a
team-based software project. In addition to the technical skills, my communication and
21
teamwork abilities improved significantly, as I was involved in discussions, presentations,
and reviews with team members.
Contribution to Real task: Being able to contribute to some task was extremely fulfilling. I
took part in building user interface components that were actually used in a product,
providing me with a sense of accomplishment and a clear understanding of how my work was
adding value. The satisfaction of seeing my code become a part of a working application was
a key highlight of the internship, reinforcing my passion for frontend development.
I am grateful for the mentorship and experiences I had during this time, as they have given
me the confidence and skills to take on more advanced challenges in the field. I am excited to
continue my journey in software development, armed with the lessons and experiences from
my internship at eTech Solutions.
22
CHAPTER FOUR
4. Challenge and Contribution (project)
4.1 challenges and contribution
Challenges in Your Internship at eTech Solutions and How to Overcome Them
o How to Overcome:
23
identifying how different components interact, and making changes without
breaking anything is a big challenge for new developers.
o How to Overcome:
o Challenge: Each company has its own set of tools for project management
collaboration (like Slack), and version control (like Git). Learning to use these
tools efficiently while adapting to team culture and workflows can be difficult.
o How to Overcome:
Observe and Adapt: Pay attention to how others use these tools
during standups or meetings. Mimicking the team's workflows will
help you quickly adjust to their practices.
24
Communicate Openly: If you’re unfamiliar with a process or tool,
communicate that with your supervisor or team members. Usually,
colleagues are more than happy to offer a quick run-through.
o Challenge: Each company has its own set of tools for project management
collaboration (like Slack), and version control (like Git). The need to manage
multiple responsibilities efficiently while meeting deadlines can feel
overwhelming.
o How to Overcome:
Time Management Tools: Use tools like daily planning to track your
tasks and their progress. Break large tasks into smaller, actionable
items.
Plan Daily and Weekly: Set daily goals and review your progress
each week. Create a to-do list every morning that contains specific
items to complete by the end of the day.
o How to Overcome:
25
Console Logging: Strategically use console.log() statements to
understand data flow through your application.
Key Features:
Randomly generates RGB values.
Displays the RGB values (e.g., rgb(255, 99, 71)).
Updates the background color based on the generated RGB values.
Technologies Used:
HTML for structure
CSS for styling
JavaScript for functionality (random number generation and DOM manipulation)
Code Snippet:
javascript
Copy code
function generateRGB() {
const r = Math.floor(Math.random() * 256);
const g = Math.floor(Math.random() * 256);
const b = Math.floor(Math.random() * 256);
document.body.style.backgroundColor = `rgb(${r}, ${g}, ${b})`;
document.getElementById('rgb-value').innerText = `RGB(${r}, ${g}, ${b})`;
}
26
Description:
This application calculates loan payments based on the loan amount, interest rate, and the
loan term entered by the user.
Key Features:
Takes loan amount, interest rate, and years as inputs.
Calculates monthly and total payments.
Displays the results clearly to the user.
Technologies Used:
JavaScript for mathematical calculations.
HTML & CSS for UI elements.
Key Features:
Increase, decrease, and reset button.
Display of the current counter value.
Technologies Used:
HTML & CSS for layout and buttons.
JavaScript for the logic behind counter updates.
Task 4: Get Unicode Value
Task 5: Tip Calculator
Task 6: Palindrome Checker
Task 7: Age Calculator
Task 8: BMI Calculator
This all of task are perfomed using javascript
Stay Curious and Eager to Learn: Embrace curiosity, always be willing to learn,
and don’t shy away from challenging tasks even if you feel uncomfortable at first.
Tackling them is how you grow.
27
Leverage Feedback: Accept and act on feedback provided by peers and mentors.
This can be invaluable for your development. Learn from mistakes and apply the
lessons in subsequent tasks.
Network with Team Members: Building good relationships with team members can
provide a support network that will help you when facing challenging tasks. They can
share insights, give you shortcuts to learn things faster, and provide emotional
support.
By understanding and addressing these challenges, you can turn them into opportunities for
growth, making meaningful contributions to your team at eTech Solutions. Your proactive
approach will not only help you overcome obstacles but also allow you to maximize your
internship experience.
28
CHAPTER FIVE
5. Recommendations and Conclusion
29
honed my debugging skills, strengthened my understanding of JavaScript
frameworks, and enabled me to find efficient solutions to common challenges
encountered in web development.
2. Angular Mastery: Given that Angular was a significant part of the experience, I plan
to delve deeper into more complex Angular topics, such as state management using
NgRx, implementing unit testing with Jasmine and Karma, and working with Angular
Material for enhancing user interfaces. This will make me more proficient and
capable of handling more challenging tasks in future projects.
30
Following tech blogs, attending webinars, and participating in local developer
meetups can help maintain a competitive edge in the industry.
Summary
The internship at eTech Solutions was highly valuable, providing me with technical skills in
JavaScript and Angular as well as exposure to professional development practices. Moving
forward, my focus will be on enhancing these skills further, developing back-end knowledge,
refining my soft skills, and building a strong network for continued growth in the tech
industry. The lessons learned here will undoubtedly shape my approach to problem-solving
and teamwork in future opportunities.
31
References
Angular Library Angular - Creating libraries
CSS Library Bootstrap. (2024). Bootstrap documentation. Retrieved from
https://getbootstrap.com/docs
Doe, A. (2024). JavaScript essentials for beginners [Online course]. Udemy.
https://www.udemy.com/course/javascript-essentials-for-beginners/
Haverbeke, M. (2018). Eloquent JavaScript: A Modern Introduction to Programming. 3rd ed.
No Starch Press
Smith, J. (2024). Learn Angular from scratch [Online course]. Udemy.
https://www.udemy.com/course/learn-angular-from-scratch/
JavaScript Library JavaScript Libraries and Frameworks - GeeksforGeeks
Seshadri, S. (2018). Angular Up & Running: Learning Angular, Step by Step. O'Reilly
Media.
32