Hello, my name is João Miguel
I'm a
I am a Computer Science student, finishing my degree in September 2025, with a deep passion for technology and problem-solving. I’m eager to contribute my knowledge and enthusiasm to meaningful projects and challenges.
Contact Me
About Me
Currently studying Computer Science
Currently pursuing a Bachelor's degree in Computer Science, with a strong passion for emerging technologies and software development.
Birthday : 12 jul 2004
Age : 19
Website : https://joaomgc.github.io/
Email : joaomiguelmcoelho@outlook.com
Degree : Computer Science
Currently living in : Portugal
LinkedIn : Click Here
Education
2019-2022
Escola Secundária Domingues Sequeira
High School Diploma
Feb 2025 - March 2025
FHV - Vorarlberg University of Applied Sciences
Short Advanced Programme by RUN-EU (ERASMUS+)
2022-2025
Bachelor's degree in Computer Science @ IPLeiria ESTG
Currently finishing 3rd Year.
Experience
May 2024 - Aug. 2024
Team Member: Formula Student - LART (Leiria Academic Racing Team)
- Developed an inspection mode where the car performed slow wheel rotations and gentle acceleration for safety checks.
- Participated in team Scrum rituals, including sprint planning, and retrospectives, to ensure incremental progress and alignment with project goals.
- Worked effectively within a team environment, collaborating with others to solve technical challenges, share knowledge, and meet project deadlines.
Certificates
April 2022
Project: "12 Hours of Management" - ISCTE Lisbon
March 2023
NDG Linux Essentials - Cisco Networking Academy
March 2024
Graphic Design with AI
August 2024
Internet of Things (IoT) Course Certificate
August 2024
Project Management and Fundamentals of Agile Methods - Santander Open Academy
October 2024
Foundations of Git by GitKraken
Academic Projects
IoT Monitoring System
I developed a web-based system using HTML, CSS, and JavaScript to access and display data collected from an API I created. The API processed data from sensors connected to an Arduino and a Raspberry Pi, which were used to monitor real-world variables (e.g., temperature, humidity, etc.). The project involved designing a responsive and user-friendly interface, developing the backend logic for the API, and ensuring smooth communication between the hardware and the web application. This project improved my skills in web development, API creation, and working with IoT devices in a practical setting.
Laptop Management System for School Library
I developed a C program to efficiently manage laptops loaned out by the school library. The system allowed users to perform key operations such as adding, updating, and removing laptop records, as well as tracking which laptops were borrowed and by who. It featured a simple menu-driven interface, leveraging file handling for data storage and retrieval to ensure persistence across sessions. This project enhanced my understanding of structured programming, data structures, and practical implementation of file management in C.
3D Product Modeling and Website Creation for La Redoute
I designed a 3D model of a product using Blender, replicating its features and details to create a visually accurate and appealing representation. Alongside this, I developed a website to present the product, using modern web development tools and technologies. The website featured an interactive gallery to display the 3D model and product information.
Miner Game in Java
I developed a Miner Game using Java, applying Software Engineering principles, including continuous client interaction and the Scrum Agile methodology. The project involved regular meetings with the client (in this case, the professor) to gather feedback and ensure the requirements were met iteratively. During the game's development, we implemented features such as mining mechanics, a scoring system, ensuring a functional and engaging user experience. Additionally, we applied best practices in object-oriented programming (OOP). This project emphasized the importance of teamwork, deadline management, and the incremental delivery of results.
AI Project: Object and Animal Recognition in Images
I developed an AI model using Python and libraries such as Tensorflow to identify objects and animals in images. The project involved building a deep learning architecture, designed to classify and detect multiple categories with high accuracy.
The workflow included:
- Data preprocessing: Preparing and augmenting a dataset of labeled images to improve the model's performance and generalization.
- Model training: Implementing and training using Tensorflow, optimizing it with techniques such as dropout, batch normalization, and learning rate scheduling.
- Inference and visualization: Creating a script to process input images, identify objects and animals, and visually represent predictions with bounding labels.
Cinema Ticket Management System in Laravel
I developed a Cinema Ticket Management System using Laravel, incorporating key functionalities such as ticket purchasing, seat selection, user authentication, and administrative management. The project was containerized with Docker for efficient deployment and utilized SQL for database management.
Key features included:
- Seat Selection: An interactive interface allowing users to view and select available seats in the cinema hall, ensuring a smooth and intuitive experience.
- Authentication: Implemented user authentication and role-based access control (e.g., admin and customer).
- Dynamic Views: Created responsive and dynamic Blade templates for user-friendly interfaces tailored to customers and administrators.
- Database Management: Designed and optimized an SQL database to handle users, bookings, payments, and cinema schedules, ensuring data integrity.
- Docker Integration: Containerized the application with Docker to streamline development, testing.
Full-Stack Web Application with Memory Game
This project involved building a full-stack web application featuring a memory game and multiplayer functionality. The backend was built using Laravel, handling user authentication, data management, and API endpoints. On the frontend, Vue.js was used to create a dynamic, interactive user interface. The memory game allowed users to match pairs of cards with a built-in timer, scoring system, and card shuffling. To enhance the experience, WebSockets were integrated to enable real-time multiplayer functionality, allowing users to compete against each other in the game. This integration provided a seamless interaction between players, ensuring an engaging and synchronized experience.
Java Backend with Nuxt.js Admin and Client Interfaces
This project involved building a package management system with a Java backend and a frontend interface developed using Nuxt.js. The backend handled various operations such as managing package information, client data, and real-time status updates. On the frontend, the admin interface was built with Nuxt.js, providing admins with an easy-to-use dashboard to manage and track packages, clients, and other essential data. The client interface allowed users to check the status of their packages in real time, providing them with up-to-date information on their shipments.
Android Memory Game with Kotlin and Composable Views
This project involved developing an Android memory game using Kotlin, with Composable being utilized for the UI components to create a modern, declarative layout. The game challenged users to match pairs of cards with a timer, scoring system, and shuffled cards. The project followed Agile methodologies, specifically Scrum, where the development process was organized into sprints with regular daily team meetings to discuss progress, roadblocks, and goals. This approach allowed for efficient collaboration and adaptability throughout the development process, ensuring timely delivery of features and a polished end product.