Vaggelis Magonezos
Software Developer
About Me
Hello World !👋
I'm Vaggelis and i love creating software for the web and learning
new technologies.
My natural curiosity and the need to create custom tools to automate
tasks in my job and make my life easier opened the gates of web development for me back in 2018, and
I've been passionate about it ever since. Bill Gates is basically talking about me :
"I choose a lazy person to do a hard job. Because a lazy person will find an easy way to do it."Most of my knowledge comes from hands-on experience. I enjoy understanding how things work and building them from scratch. I love creating new things and solving problems while following best practices and clean code. I value original solutions, strive to do things right, and see mistakes as chances to learn.
Over the years, I've mainly worked with web technologies focusing on JavaScript, using frameworks like React, React Native and Next.js for the front-end, and Node.js for the back-end and even though I currently develop on both, I am more inclined towards the front end and creating user-friendly, responsive, and snappy UIs. Design-wise, I like the minimalistic approach and to keep things simple, clean, and intuitive.
When i need to work with an unfamiliar technology, I use online courses combined with hands-on projects to build a strong foundation in the concepts and best practices. Then, I dive into more complex details and further refining my skills through practical implementation. I also read books to learn key programming concepts and study code on GitHub to see how more experienced developers work, their approaches and how they organize their code.
My Work
-
Getaways Suite
Getaways Suite is a collection of comprehensive in-house operational resource management solutions I developed to streamline the tasks of Operations department, it includes 3 separate projects - one for each key areas of management -, an administrative application for the back-office, a mobile app for the external staff and a booking portal for the customers. The software is designed to manage and allocate resources efficiently for day-to-day operational tasks. It facilitates precise planning, coordination, and utilization of resources to ensure that specific operational activities are supported and business needs are met in real time.
-
Getaways Management
This is a specialized operations management system which serves as a central hub and CMS, for all applications within the Getaways Suite. It includes a booking manager,a bookings calendar with comprehensive planning tools, a fleet manager with real-time vehicle map tracking and detailed history and documentation for each vehicle. The system also supplies content for the mobile app, manages staff assignments, daily tasks, and schedules for both internal and external staff, as well as freelance contractors, offers bookings analytics including filtering and search capabilities, visitor analytics for the booking portal app and handles user management.
* Project links cannot be shared at this time because they contain sensitive business logic information, but I am currently working on a sanitized version
The frontend is developed with React, query management and caching is handled by React-Query and Axios, styling by Styled Components and Material UI, and animations by Framer Motion.
The underlying booking engine is communicating with the Bokun reservation system through API and the project is configured as a PWA and deployed on Netlify.
The backend is built with Node.js with Express and shared along the mobile app. Authentication is JWT-based and is handled by Passport.js, storage is handled by Firebase storage, Socket.IO is used for real-time communication with the front-end, the database is cloud-based MongoDB and is hosted on Heroku platform. -
Getaways Mobile App
The Getaways Mobile App is designed for the company's external staff to view their personalized schedules and assigned tasks for the upcoming days. Tasks include detailed information such as task files, pickup routes, client names and locations, colleagues involved in the same task, task details, and the back-office duty officers. Staff also receive notifications when a new schedule is added, a new task is assigned, or a management announcement is made.
The app is built with React Native and managed using the Expo library. The backend is powered by the same Node.js instance as the Management app, Authentication is JWT based, Query management and caching are managed by React Query, animations are handled by the Reanimated library, and the app is deployed to both the iOS App Store and Google Play Store through Expo EAS.
App Store
Play Store
Test Credentials
Username: test_account_01
Password: test_account_01 -
Getaways Client Booking Portal
The Getaways Booking Portal is a web app provided to clients via an automated message following their booking confirmation. It displays all essential information about their activity, including itinerary details, the tour or activity program, useful information, and meeting point details with navigation links via Google Maps. It also provides the names of the tour hosts and allows direct communication with the office through email or messaging platforms. During pickup, clients can track their assigned van or bus on a live map, confirm instructions, and update their location if needed. Additionally, they can access weather updates, book other activities at a discount, and leave reviews directly on TripAdvisor.
The portal also serves as a platform for collaborations with other businesses and agencies, promoting their products to our clients. This tool is widely used by our clients and is crucial for automating many hours of office labor and reducing operational costs.
Built on NextJs with Typescript and a mobile-first design, styled with CSS modules and animated using Framer Motion. Maps are integrated via Mapbox GL and the project is deployed on the Vercel platform.
Test booking portal
Github
-
Getaways Management
-
HH E-Tickets Availability Tool
The HH E-Tickets Availability Tool helps travel agents who used to log into the Ministry of Tourism’s website with a business account to check available time slots at Greek archaeological sites. They had to buy tickets with open dates and manually choose specific days and times to see what was available and plan their visits.
This tool makes it easier by letting users choose a single date or a range of dates for any Greek archaeological site in the time-slots program and see availability instantly with automatic refresh. Future updates will add features like tracking specific dates and times, with email or SMS alerts when availability changes based on user preferences
Its built with Next.js and Typescript, data querying/caching is handled by React-Query, database is cloud-based MongoDB and is deployed on Vercel platform.
https://hh-tickets-availability-tool.vercel.app/
GitHub -
athensbagstorage.com
This is a business website i developed for a client who offers luggage storage services in Athens.
It's built on Next.js with TypeScript, styling with Tailwind and Shadcn, animations with Framer Motion, internationalization with next-intl and is deployed on the Vercel platform.
https://www.athensbagstorage.com/
GitHub -
TheFreeWallet
This is a small budgeting app I developed to explore the new Next.js server actions feature.
It's built with Next.js and TypeScript, authentication is handled by NextAuth, and the database is a cloud-based Supabase PostgreSQL, managed with Prisma. The app is configured as PWA and deployed on the Vercel platform.
https://www.thefreewallet.com/
GitHub
Relevant Work Experience
-
Software Developer/Operations Management at Getaways
Greece (2021 - Present)
- Designing, developing, deploying, and maintaining the in-house software to streamline and automate various tasks resulting in increase of efficiency and reducing operational costs
- Organizing the operations department, managing the company's accounts on various merchant platforms, adding content, and collaborating closely with administration to strategize product promotion, launching, and pricing
- Working with partners to negotiate and finalize deals, including selling third-party products or having them resell our offerings. This process involves setting prices and integrating our booking systems with theirs
- Keeping company website content up to date.
- Training/Recruiting
My role here at Getaways is handling a diverse range of responsibilities, including operational tasks, networking, and the development and maintenance of in-house software, more specifically, i have contributed in the following:
Education
-
Applied Computer Electronics and Networks
at OAED Community School (2002-2006)
- This program aimed to give you a foundation in computer systems, electronics, and network technologies. It focused on developing technical skills for troubleshooting hardware issues and understanding electronic components. Additionally, it provided hands-on experience in collaboration with public sector organizations, enabling you to apply your knowledge to real-world situations
Contact
If you'd like to get in touch, feel free to contact me through any of the following channels: