About

Learn more about me

Personal Profile

Full-Stack Developer & Junior Software Engineer

I spend most of my time designing and developing innovative high-quality software and web-based solutions including desktop and mobile applications for individuals and businesses.

  • Education: First Class Honours Bsc, H.Dip
  • Location: West of Ireland
  • Current Employer: Self-Employed
  • Contract Availability: Get in Touch
  • Current Status: Open to Opportunities

I have 3+ years experience designing, developing and implementing web-based solutions while constantly upskilling on the latest technologies, techniques and frameworks. I am proficient with both Frontend and Backend development having experience working with JSON & Restful API integration and with using most modern frameworks such as React, Angular, Laravel, and more.

Statistics


Year's Frontend Experience

Year's Backend Experience

72

Hour Average Working Week

Site Visits Since January 2021

Awards


First Class Honours Award: Bsc Hons Business Information Systems

2020

Academic Achievement Award: Highest Grade — Business Process Modeling

2019

Student of the Year Award — Occupational Health & Safety

2009-2010

Interests

Health & Fitness

D.I.Y

Hiking and Travel

Aerial Photography

Skills | Experience

Software Engineering

Experience Levels — Technology Stacks
🖥️—"Ars longa, vita brevis"

Development Cave

Frontend

HTML 5
JavaScript
TypeScript
Bootstrap
CSS 3
jQuery
Wordpress

Frontend Frameworks

React ❤️
Next.js
SASS (CSS)
Vue
Angular

Tech Stacks

LAMP Stack

LAMP Stack

MEAN Stack

MEAN Stack

MERN Stack

MERN Stack

MEVN Stack

MEVN Stack

Jam Stack

JAMstack

Backend

PHP ❤️
C#
SQL
Java
Python
Bash (Unix shell)

Backend Frameworks

Laravel (PHP) ❤️
CodeIgniter (PHP) MVC
Django (Python)
Spring Boot (Java)
Express (JS)
.NET (C#)

Database

MySQL

Postgres

MongoDB

Azure App Service

SQL Server

Desktop/Mobile

Electron
Java
React Native
Ionic

Cloud

Azure
Amazon Web Services

WEB APP Deployment

Google Firebase

Google Firebase

NPM

Netlify

Heroku

Azure Cloud

Azure

AWS

Vercel

Vercel

Google Cloud

Google Cloud

Digital Ocean

Digital Ocean

Soft Skills

Communication Skills: Verbal/Written
Teamwork & Collaboration
Proactive & Organisational
Attention to Detail
Enthusiasm & Passion to learn
Accountability
Open-mindedness and adaptability
Ability to Work Under Pressure
Logical & Methodical Thinker
Problem Solving & Analytical Abilities
Project Management
Work Ethic

CI/CD/DevOps/Test

Slack

Slack

Github

Jira

Jira

NPM

NPM

NuGet

NuGet

Git

Git

Education | Experience

Resume Overview

Prefer the C.V. Version? get in touch

Summary

Michael O'Grady

Personal Profile

A young motivated post-graduate student passionate about technology and building innovative, high-quality software with an unmatched curiosity to learn and progress with 3+ years’ design and development experience and currently pursuing a H.Dip in Software Development.

Full-Stack Development Experience

Although my background is centered mostly around the LAMP stack, I have experience with frameworks such as .NET & MVC design pattern. Recently, my work revolves around modern JavaScript frameworks such as React, Vue, & Angular with a particular interest in PHP frameworks such as Laravel & CodeIgniter, which compliment my prior knowledge of PHP. Regardless, I am a rapid learner & believe in choosing the right technology stack for the job with an emphasis on rapid deployment, speeding up development time & often learning on the job.

Cloud Platform Experience

I have extensive knowledge around cloud migrations and deployment of web applications specifically on Microsoft Azure and more recently, AWS. With modern applications moving serverless, I spend more time using Google Firebase and other similar scalable architectures.

Education

H.Dip In Full-Stack Software Development

2020 - 2021

Galway Mayo Institute of Technology, Galway, Ireland

Specialising in:

  • Advanced Object Oriented Full-Stack Software Development in Desktop, Cloud, Web & Mobile Applications.

Other skills include: Network Technologies, Agile Software Development, Cloud, Web and Mobile Applications Development, Database Design & Development, Computer Architecture and Technology Convergence, Operating Systems and Cloud Computing, Computational Thinking with Algorithms and Advanced Object Oriented Software Development with an emphasis on Java, JavaScript, PHP and TypeScript.

BSc (Hons) Business Information Systems
 —Grade: 1:1 First Class Honours

2016 - 2020

Galway Mayo Institute of Technology, Galway, Ireland

Specialising in:

  • Dynamic Web & Database Systems Development.
  • Cloud Infrastructure and Application Development.
  • Digital Marketing (inc PPC, SEO) & Graphics Design
  • Business Analysis (BA), Intelligence (BI) & Data Analytics.

Other skills include: Project Management, Information Systems Development, Strategic Management, Business Analysis, Data Mining, Database Management Systems, Business Analytics, Data Modelling, Human Resource Management, Marketing, Business Process Modeling, Visual & Multimedia Design, Business Communications, Supply Chain Management, Financial Accounting & Intellectual Property Law.

Professional Experience

Full-Stack Developer

2020 - present

Self-Employed, Ireland

  • Development of modern, cloud-native web applications built on the latest JavaScript and PHP frameworks such as React, Vue, Angular, Laravel, CodeIgniter and more.
  • Responsive, innovative & scalable web development for both static & dynamic websites and blogs with built-in Graphics Design, Digital Marketing & SEO solutions.
  • Development of cutting-edge cloud based solutions on scalable-elastic architecture with modern web application hosting, migration of resources and integrations.
  • Development of modern full-stack software encompassing modern software frameworks and SDK's for the development of Desktop, Native, Mobile Web & Hybrid Applications.
  • Integrations with REST / SOAP and other APIs for Google Maps, social media logins, payment processors, and other services.

Web Developer with KNM Consultants

2017 - 2020

GMIT, Galway, Ireland

  • Designed and developed a number of static and dynamic websites using HTML5, CSS3, JavaScript, Bootstrap & jQuery for clients and projects.
  • Developed e-commerce and content management systems (CMS) for clients based on the WordPress platform and implemented integrations with plugins such as WooCommerce, Mail Chimp and more.
  • Provided digital marketing services and solutions to clients by developing and implementing marketing strategies for Social Media Marketing (SMM), Search Engine Marketing (SEM), PPC, SEO, Newsletter Automation and Content Creation.
  • Increased web traffic and conversions for businesses through effective usage of Google Analytics and designing logos, graphics and media through the use of Adobe Photoshop & Illustrator.

Microsoft Dynamics 365 CRM Support Consultant

January - August 2019

Work-Placement Internship, Codec Ireland, Galway

  • Worked as part of the CRM support team building solutions & troubleshooting errors for clients through a ticket based system.
  • Liaised with Microsoft, senior consultants & solution architects to resolve complex problems & customer issues.
  • Managed multiple projects and self-directed learning at a given time in a fast-paced working environment under pressure.
  • Managed and planned CRM upgrades for clients and created documentation improving software upgrade processes.
  • Promoted to the role of a primary support consultant for three major clients working closely to create system customisations.
  • Managed SLA’S, KPI’s and participated in fortnightly global support team boardroom meetings in person and on MS Teams.

Services

Freelance & Contract Work

Diverse Skills Tailored to Your Requirements

Web Application Development

Development of modern, Cloud-Native Web Applications built on the latest JavaScript and PHP frameworks such as React, Vue, Angular, Laravel, CodeIgniter and more.

Cloud Solutions Development

Development of cutting-edge Cloud Based Solutions on scalable-elastic architecture with modern Web Application Hosting, Migration of Resources and Integrations.

Web Design, Graphics & Digital Marketing

Responsive, innovative & scalable Web Development for both Static & Dynamic websites and blogs with built-in Graphics Design, Digital Marketing & SEO solutions.

Desktop & Mobile Software Development

Modern Full-Stack Software Development encompassing modern software frameworks and SDK's for the development of Desktop, Native, Mobile Web & Hybrid Applications.

Business Analysis & Strategic Management

Professional Business Analysis & Strategic Management tools, techniques, and initiatives for the formulation & implementation of goals and objectives.

Business Intelligence (BI) & Data Analytics

Development of be-spoke Data Analytics & BI Solutions to turn complex data into powerful Business Intelligence with modern visualization tools and techniques.

Services

Web Application Development

Back to services

Web Application Development & SEO

Technologies Include

React

Angular

Vue

Laravel

Django

ASP.NET

About

A modern Web Application is a software program that exists on the server and runs using a web browser through a webpage. This type of approach is taken for complex projects that are created with a combination of programming langauges and web application frameworks which allow interactivity and are designed for a variety of uses. These types of projects require development using complex frameworks such as .NET, Angular, Ruby on Rails and more, libaries such as React.js, Vue.js, jQuery, Backbone.js and more, JavaScript runtime environments such as Node.js and NPM and more depending on the type of project. Web Apps are similar to desktop apps in that almost all of their content is from the end user and web apps are based on user engagement and are more complex than dynamic websites and include a host of functionality such as Web API's and REST API's and more.

There are two main design patterns for web apps: multi-page application (MPA) and single-page application (SPA). A single-page application is an modern app that works inside a browser downloads the content automatically and does not require any page reloading or wait time during use. Examples are Netflix, Instagram, Tinder, Linked-In, Facebook's news feed, Gmail and more, all of these offer a faster, responsive and an immersive user experience. SPAs use AJAX and HTML5 to build responsive apps. JavaScript frameworks such as Angular, React, Vue, and Ember are responsible for handling the heavy lifting on the client side for a single-page app. A multi-page application is more traditional and tends to be extremely large out of necessity. Due to the amount of content they contain, multi-page apps are generally many levels deep with lots of links and intricate UIs. To picture an MPA, just think of any complex website with multiple pages like Amazon or eBay. A multi-page application is appropriate for large companies with a broad range of products or services that require lots of features and multiple menus. An MPA is more suitable for online stores, business sites, catalogs, and marketplaces.

FrontEnd & BackEnd

Modern responsive full-stack web application development involves Frontend (client side) and Backend (server side) portions of a web application. Most web applications are built in a three-tier architecture that consists of three important layers: data, logic, and presentation. In web applications, the application structure usually breaks down to database, server, and client, while in modern web development, it can also be broken into database, server logic, client logic, and client UI. A popular paradigm for implementing this model is the Model-View-Controller (MVC) architectural pattern.

The Frontend — refers to the visible part of website or web application which is responsible for user experience with a primary focus on how the website looks and functions. The user directly interacts with the front end portion of the web application or website. The Frontend portion is built by using some libraries, frameworks, and languages.

The Backend — refers to the server-side development of web application or website with a primary focus on how the website works. It is responsible for managing the database through queries and APIs by client-side commands. The Backend portion is built by using some libraries, frameworks, and languages.

The database — is the collection of inter-related data which helps in efficient retrieval, insertion and deletion of data from database and organizes the data in the form of tables, views, schemas, reports and more.

Software bundles, known as “stacks” are merely an ensemble of collaborative programs used in tandem to accomplish one cohesive goal. A typical stack usually takes an operating system, some middleware, database management, and other varying applications.

Choosing the right technology stack to build your software application with is crucial for your business success and profitability. The most important stacks of software development in 2020 are:

The MEAN stack — (MongoDB, Express.js, AngularJS, and Node.js). Being an end-to-end JavaScript stack, you use a single language throughout your stack Thus, you have the opportunity to reuse code across the entire application, decreasing needless reinvention. Another advantage of using MEAN is that all the technologies are free and open-source with the support of a vibrant community. The applications of MEAN stack are perfect for cloud hosting since they are flexible, scalable and extensible. The stack can be deployed easily as it includes its own web server. The database can be scaled on-demand to accommodate usage spikes temporarily and this stack excels in various uses like calendars, mapping and location finding, and news aggregation sites.

The MERN stack — is very similar to MEAN, in which React replaces Angular. Since React uses Virtual DOM, changes can be implemented easily. React uses JSX, which is a modification of JavaScript, enabling seamless component work. React is one of the most popular frameworks used for building high-end, single-page applications with interactive UIs. Since 2020 is all about enhances UI, MERN stands to gain. However, while working with React, developers have to deal with limited core functionality since React is a library and not a framework. Hence, most developers resort to third party services.

The MEVN stack — In this version of MEAN, Angular is replaced by Vue.js as a Frontend framework. This framework has shown immense popularity over the last few years. Its popularity is expected to continue to 2020 as it is a lightweight solution compared to Angular. Vue.js offers basic out-of-the-box functionality. This functionality can be extended using third-party services. You can say that Vue.js combines the best features of Angular and React to give you great performance and a rich set of tools.

The LAMP stack — can be called a classic, time-tested stack of technologies – Linux, Apache, MySQL, and PHP. The LAMP still remains one of the most common ways to deliver web applications and was one of the first open-source software stacks, which is still widely used. Popular open-source CMS such as WordPress and Drupal use LAMP. The stability, simplicity, and power that accompany LAMP have made it the platform of choice for developing new custom web apps. The LAMP stack can efficiently handle dynamic pages wherein the content changes every time it is loaded. LAMP being open-source and non-proprietary, you can choose components based on your specific business requirements. Instead of using Linux as the OS, you can use Microsoft Windows to form a WAMP stack or MAC OS to form the MAMP stack. PHP can also be swapped for Perl or the increasingly popular Python language.

The Serverless Stack— (2020) is the best time to build on cloud infrastructure or in other words- to go serverless. Serverless computing platforms provide all the services and tools thus making infrastructure management much simpler. You can easily scale up to hundreds of thousands of users overnight. AWS Lambda was one of the first serverless platforms. Google cloud is another significant provider of serverless computing services. This leads on to an example of the serverless stack by means of JAMstack.

Jamstack (2020+) is the new standard architecture for the web. Using Git workflows and modern build tools, pre-rendered content is served to a CDN and made dynamic through APIs and serverless functions. Technologies in the stack include JavaScript frameworks, Static Site Generators, Headless CMSs, and CDNs. The Jamstack architecture has many benefits, whether you’re building a large e-commerce site, SaaS application or personal blog. Better Performance: Why wait for pages to build on the fly when you can generate them at deploy time? When it comes to minimizing the time to first byte, nothing beats pre-built files served over a CDN. Higher Security: With server-side processes abstracted into microservice APIs, surface areas for attacks are reduced. You can also leverage the domain expertise of specialist third-party services. Cheaper, Easier Scaling: When your deployment amounts to a stack of files that can be served anywhere, scaling is a matter of serving those files in more places. CDNs are perfect for this, and often include scaling in all of their plans. Better Developer Experience: Loose coupling and separation of controls allow for more targeted development and debugging, and the expanding selection of CMS options for site generators remove the need to maintain a separate stack for content and marketing.

To find out more information on which approach may suit you best or to hire me for your project, just get in touch.

Services

Cloud Solutions Development

Back to services

Cloud Solutions Development

Technologies Include

Azure App Service

Virtual Machine

Azure App Service

SQL Servers

Azure App Service

Azure Database

Azure App Service

App Services

Azure App Service

Azure App Service - Mobile

Azure App Service

WordPress WebApp

Azure App Service

Azure Database Migration Services

Azure App Service

Azure DevOps

About

Cloud computing is the on-demand availability of computer system resources, especially data storage (cloud storage) and computing power, without direct active management by the user as this is outsourced to the cloud provider. The term cloud computing is generally used to describe data centers available to many users over the Internet.

Cloud computing allows companies to avoid or minimize up-front IT infrastructure costs allowing enterprises to get their applications up and running faster, with improved manageability and less maintenance, enabling IT resources to be adjusted to meet fluctuating and unpredictable demand such as during certain periods of peak demand requiring high computing power - this is refers to scalability.

Cloud computing services have several common attributes: Virtualization— cloud computing utilizes server and storage virtualization extensively to allocate/reallocate resources rapidly. Multi-tenancy — resources are pooled and shared among multiple users to gain economies of scale. Network-access — resources are accessed via web-browser or thin client using a variety of networked devices (computer, tablet, smartphone). On demand — resources are self-provisioned from an online catalogue of pre-defined configurations. Elastic — resources can scale up or down, automatically. Metering/chargeback — resource usage is tracked and billed based on service arrangement.

Among the many types of cloud computing services delivered internally or by third party service providers, the most common are: Software as a Service (SaaS) — software runs on computers owned and managed by the SaaS provider, versus installed and managed on user computers. The software is accessed over the public Internet and generally offered on a monthly or yearly subscription.
Infrastructure as a Service (IaaS) — compute, storage, networking, and other elements (security, tools) are provided by the IaaS provider via public Internet, VPN, or dedicated network connection. Users own and manage operating systems, applications, and information running on the infrastructure and pay by usage.
Platform as a Service (PaaS) — All software and hardware required to build and operate cloud-based applications are provided by the PaaS provider via public Internet, VPN, or dedicated network connection. Users pay by use of the platform and control how applications are utilized throughout their lifecycle
Mobile backend as a service (MBaaS)— also known as"backend as a service" is a model for providing web app and mobile app developers with a way to link their applications to backend cloud storage and APIs exposed by back end applications while also providing features such as user management, push notifications, and integration with social networking services. These services are provided via the use of custom software development kits (SDKs) and application programming interfaces (APIs). Providers of this service include: Azure, Firebase, AWS Amplify, Red Hat.

Categories of the types of services available on the cloud include: Compute, Networking, Storage, Web, Mobile. Containers, Databases, Analtyics, Blockchain, AI+Machine Learning, Internet of Things (IOT), Mixed Reality, Integration, Identity, Security, DevOPS, Migrate, Monitor, Management & Governance, Intune and more.

To find out more about what you can deploy on the cloud or to hire me to develop your cloud based solution, just get in touch below.

Sample Architectures

Services

Web Design, Graphics & Digital Marketing

Back to services

Database, Software & Coding Applications

Technologies Include

HTML

CSS

Javascript

PHP

Bootstrap

Wordpress

Web Design Service

A static website is a website that displays on the browser exactly as it is stored in the server and doesn't change at all unless the creator changes it manually. Static websites are suitable for content that never or rarely needs to be updated and are typically written in plain HTML, CSS and JavaScript — PHP code can also be added if contact form functionality is required. These websites are suited to personal sites and small to medium businesses where they just provide product or service information for their consumers.

A dynamic website on the other hand can range from a Wordpress Site which allows interactions with the site enabling the creation of pages, posts, comments and plugins including shopping cart functionality, to even more complex solutions requiring dynamic HTML, client & server side scripting and which enables connections to databases that pull in information in an organised and structured way depending on the actions taken by the user. There are a also a broad range of programming languages, frameworks and tools which are required for the development of a dynamic website depending on the type of project, some of which are more suitable than others.

To find out more information on which approach may suit you best or to hire me for your project, just get in touch.

UX, UI & Design

Photoshop

Photoshop

Illustrator

Illustrator

InDesign

InDesign

Premiere Pro

Premiere Pro

XD

XD

Dreamweaver

Dreamweaver

Premiere Pro

Acrobat DC

Premiere Pro

Media Encoder

Digital Marketing

UX, UI and Graphic Design share some skills and similar approaches but the disciplines are distinct in a number of ways.

Graphics Design — uses typography, visual arts, and page layout techniques to create visual compositions. Common applications of graphic design include corporate design (website banners, visuals, logos, business cards and branding), editorial design (magazines, newspapers and books), wayfinding or environmental design, communication, advertising, web design, packaging and signage.

UX Design — (user experience design) applies to anything that can be experienced. For example: How easy is the checkout process when shopping online? Does your online banking app make it easy for you to manage your money? The ultimate purpose of UX design is to create easy, efficient, relevant, and all-round pleasant experiences for the user. User experience design, then, considers all the different elements that shape this experience. A UX designer thinks about how the experience makes the user feel, and how easy it is for the user to accomplish their desired tasks.

UI Design — (user interface design) considers all the visual aspects of the user’s journey, including all the individual screens and touchpoints that the user might encounter; think tapping a button, scrolling down a page or swiping through an image gallery. While the UX designer maps out the journey, the UI designer focuses on all the details that make this journey possible. UI designers have a huge impact on whether or not a product is accessible and inclusive. They’ll ask questions like “How can different color combinations be used to create contrast and enhance readability?” or “What color pairings cater to color blindness?”

Digital Marketing has become extremely prominent in today's world as more electronic devices enter our lives and the amount of time spent using these devices increases every day which makes digital marketing more important and impactful than ever before. Without digital marketing efforts, you stand to reach almost no one. I can revolutionise your offering by implementing the below soutions for you.

Search Engine Optimization (SEO) — including both On-page and Off-page SEO, Web Analytics & Tools — Analytics & My Business, Search Engine Marketing (SEM) — using keywords, phrases and pay-per-click advertising, Content Marketing & Social Media Marketing — Facebook, Twitter, Snapchat, Instagram or LinkedIn integrations, Email Marketing — Subscription Newsletters, Automated Marketing Campaigns, Surveys and more.

To find out more information on how I can implement these solutions and more for your business, just get in touch.

Services

Desktop & Mobile Software Development

Back to services

Database, Software & Coding Applications

Technologies Include

Javascript

C#

Python

PHP

Java

Laravel

SQL Server

Electron

SQL Server

React Native

About

Enterprise mobile applications are categorized into three, namely, Native applications, Mobile Web applications, and Hybrid applications. Native applications are built for a specific platform. For instance, Facebook has individual applications for Android as well as iPhone users. Mobile Web applications, on the other hand, can be described as websites that are mobile optimized. Hybrid mobile applications, however, are a blend of both Native and Web technologies. Hybrid applications best suit cross-platform requirements and also ensures a cost-effective solution for businesses.

In the case of native apps — there are specific languages used for specific Operating Systems or platforms. That is, Java is the language used for programming an Android app, Objective-C or Swift are the languages used for iOS apps and C# is the language for Windows Operating system. All of these have their own standard Software Development Kits (SDKs), which provide the necessary tools and interface elements for development.

Hybrid mobile apps — are a blend of both Native and Web technologies. Hybrid applications best suit cross-platform requirements and also ensures a cost-effective solution for businesses. A hybrid mobile application is a native web application wrapped up within a native application. Technically, it is written using HTML5, CSS3, and Javascript. This is then compiled into either a native iOS, Android or other mobile platforms, using a wrapper technology such as Cordova or PhoneGap. Hybrid applications make use of web technologies such as Javascript, HTML 5 and CSS3. Additionally, it can also access features from the native platforms. That is, hybrid mobile applications can access GPS, camera, contacts, etc and also being able to run on both Android and iOS platforms. Since hybrid platforms make use of a single code base to run on multiple platforms like Android, iOS, and Windows OS, these applications are platform-independent and require less development time. Hybrid mobile applications support offline features such as local storage capabilities as it supports SQLite database.

Instagram, Yelp, Uber, BaseCamp, etc are examples of hybrid mobile applications. The major hybrid mobile application frameworks widely used are Ionic, Onsen UI, React Native, Apache Cordova or PhoneGap. With the advent of these frameworks, mobile application developers can now write code once and run anywhere.

The four major programming languages that are largely used for mobile app development are – Swift for Apple products with minimal coding that can be easily maintained. C++ is a versatile tool that can be used for multiple platforms. Java This object-oriented programming language is the official language for Android development. This language is easy to handle and many open source libraries are made available for users to choose from. HTML5 here is no better technology to use than HTML5 if your organization is looking at developing web-frontend applications for mobile devices. PHP is object-oriented and uses a three-layered model to help create dynamic mobile apps and web applications. It works great for apps that require database integration.

Modern mobile application development frameworks such as:
Flutter — is the new trending cross-platform mobile application development technology in town. It uses DART as a programming language instead of JavaScript which facilitates rapid and effective analysis, fabricates UIs, includes highlights and fixes bugs in milliseconds. The open source cross-platform SDK by Google extends a wide range of plugins backed by Google and allows both Android and Apple iOS platforms to construct mobile app.
React Native — This JavaScript open-source framework has become the most preferred mobile app development technology. It offers ample support to IDEs and other mobile app development tools and enables the development of native apps for iOS and Android platforms.
Ionic — uses HTML5 programming language and is widely preferred for mobile app development. It combines HTML, CSS3, and JavaScript to build native based apps and create their UI functionalities with ease. This mobile app development technology works on iOS’s UIWebView or Android’s WebView.
Xamarin — This cross-platform framework with coding advantages of C#, uses single code across iOs, Android, Windows, and other platforms. With the benefits of code sharing, Xamarin builds applications that render exact native app experience. It is the most time and cost saving framework for mobile app development.

Desktop application development dominated the software world for many years. However, with the rise of the internet, web applications took over with an incredible pace. When smartphones became popular, mobile applications came to be in huge demand, pushing desktop applications into third place. While the previous statement might be true to startups, there is still an incredible amount of software development happening in desktop applications. Consider programs like Excel, Adobe Photoshop and the Chrome browser. Developing for Desktop is great for a lot of reasons. You get to work with excellent mature technologies that stood the test of time. The debugging is as best as it comes. Arguably, desktop apps have less complexity and development is easier. Like with all software, there are many different ways to go when developing desktop applications. This includes different programming languages, frameworks, and architecture decisions. All of which will differ according to the individual needs of your product. Top UI frameworks & technologies available today are:

WinForms — An older Microsoft technology, very popular before WPF. Unlike WPF and UWP, WinForms relies on Visual Studio Designer’s drag and drop interface. The drag and drop designer makes WinForms very productive for applications that don’t require specific customization and Responsive UI. Easy to learn Works on all Windows versions
Electron — A framework that allows developing Desktop apps with Web technologies (HTML/CSS/JavaScript). The magic behind Electron is that it uses Node.Js and Chromium to create a Web View in a desktop window. Electron gained some popularity for a while and there are great applications developed with it like Slack, WhatsApp Desktop, Facebook Messenger, Microsoft Teams, GitHub Desktop and Visual Studio Code.
UWP — Microsoft’s newest Desktop Application technology. It’s XAML based, like WPF, and you can write in C#, VB.Net, and C++ but most applications are written in C#. Key points on UWP: The application works in a Sandbox Environment, so you are limited in your interaction with the PC. Works only on Windows 10 The deployment is through Microsoft Store. This will make deployment and charging easier, but Microsoft will take a share of your profit (30% in fact). UWP has a relatively steep learning curve.
WPF — A popular mature XAML based Microsoft technology. You can write in C# or VB.NET. WPF has very powerful Templating, Styling, and Binding capabilities that are fitted for big applications. WPF has a relatively steep learning curve. Runs on any Windows OS. A mature technology, available since 2006.
JavaFX and Swing — Two Java UI frameworks from Oracle. Both are cross-platform. JavaFX is newer and encouraged by Oracle as a replacement for Swing, but it has relatively low adoption. Swing, on the other hand, is older and more widely used, but still less popular for Windows applications than WPF or WinForms. An example application written with Swing is JetBrain’s IntelliJ. Both are cross-platform. Swing and JavaFX are written in Java, so your end-user will have to install the JRE.
Qt — A cross-platform, C++ based UI framework. You can write the UI objects in code or use QML, which is a declarative language somewhat similar to JSON. An example of an application written with Qt is Maya.
9 of the most important things that need to be considered in advance or at the start of development are:
1. Choose a UI Development Technology
2. Choose a Deployment Strategy
3. Choose an Installer
4. Setting up Continuous Integration and Deployment (CI/CD)
5. Logging and Troubleshooting
6. Theming your application
7. Purchasing Controls
8. Choose your MV* framework(s)
9. Licensing
We covered some of the most important decisions in an application’s architecture but there are other considerations like Localization, Testing, User Settings, Database and so on.

To find out more information on which approach may suit you best or to hire me for your project, just get in touch.

Services

Business Analysis & Strategic Management

Back to services

Bizagi Business Process Model - Organising a Party

Technologies Include

Jira

Jira

bizagi

Bizagi Modeler

MS Project

MS Project

MS Project

Slack

About

Business analysis is a research discipline which involves identifying business needs and determining solutions to business problems. Solutions often include a software-systems development component, but may also consist of process improvement, organisational change or strategic planning and policy development.

To investigate business systems, a business analyst will take a holistic view of the situation and examine elements of the organisation structures and staff development issues as well as current processes and IT systems to evaluate actions to improve the operation of a business system. Again, this may require an examination of organisational structure and staff development needs, to ensure that they are in line with any proposed process redesign and IT system development and to document the business requirements for the IT system support using appropriate documentation standards.

A Business Analyst (BA) adds tremendous value to projects ensuring that time, money, and energy invested in creating a software solution brings a fruitful return on investment for a client. Skipping the analysis phase and going right into coding can be a costly mistake which is why the Business Analysis phase is important for the definition of requirements and for figuring out how to transform them into the most effective and realistic technical solution. Quality software is the result of well-executed design and development, which can only happen if requirements are accurate and complete. Some techniques and methods from business analysis toolkit involve: developing a Business & Operating Model Canvas, assessment of the Requirements architecture, specification and validation.

I split up the business analysis process into two stages:
Stage 1 — Business Modeling: consists of diving into a project to discover a client’s needs, operating processes, problems their product is going to solve and for whom, and metrics that we’ll use to see if the solution has been implemented successfully. Business modeling ends when I will have outlined the vision of the project and are ready to define the requirements.

Stage 2 — Requirements Engineering: definition of user roles and a product feature set, creating user activity diagrams and epics, decomposing those epics into user stories, and building a data model. I will also define acceptance criteria that a product must satisfy and get a client’s approval to move the project forward.

Project success is 80% planning, 20% execution and the business analysis stage is that 80% which can make all the difference.

To find out more or to hire me as a business analyst as just get in touch below.

Service Images

Techniques Include

SWOT Analysis

PESTLE Analysis

5 Forces Analysis

Value Chain Analysis

About

Strategic Management is the ongoing planning, monitoring, analysis and assessment of all necessities an organisation needs to meet its goals and objectives. Changes in business environments will require organisations to constantly assess their strategies for success. Helping a company find ways to be more competitive is the purpose of strategic management. To that end, putting strategic management plans into practice is the most important aspect of the planning itself.

Stages Involve — identifying benchmarks, realign resources including financial and human resources and putting leadership functions in place to oversee the creation, sale, and deployment of products, strategy and services which helps organisations take stock of their present situation, chalk out strategies, deploy them and analyze the effectiveness of the implemented management strategies.

I split up the strategic management analysis process into five stages:
Phase 1 — Assessing the organisation's current strategic direction
Phase 2 — Identifying and analyzing internal and external strengths and weaknesses
Phase 3 —
Formulating action plans
Phase 4 —
Executing action plans
Phase 5 —
Evaluating to what degree action plans have been successful and making changes when desired results are not being produced.

To find out more or to hire me as a strategic management consultant, just get in touch below.

Service Images

Services

Business Intelligence (BI) & Data Analytics

Back to services

Business Intelligence (BI) & Data Analytics

Technologies Include

Power BI

Power BI

IBM SPSS Modeler

IBM SPSS Modeler

IBM SPSS Modeler

SSRS

IBM SPSS Modeler

Tableau

Azure App Service

SQL

Oracle

Azure App Service

SAP

Azure App Service

Mode

Tools & Techniques

ETL

Data Modelling

Data Mining

Data Presentation

About

Business intelligence (BI) refers to software technologies, applications, and practices for the collection, integration, analysis, and presentation of business information. A BI solution is a combination of strategy and technology for gathering, analyzing, and interpreting data from internal and external sources, with the end result of providing information about the past, present, and future state of the subject being examined. The terms business intelligence and business analytics are often used interchangeably. The term business analytics refers to examining data to find trends and insights, while data analytics involves analysing datasets to uncover trends and insights that are subsequently used to make informed organisational decisions. When used together BI and data analytics have a broader meaning and includes every aspect of gathering, analysing, and interpreting data.

Current business intelligence/business analytics solutions offer applications to help the user at every stage of the process to gain actionable information. This includes applications for data preparation, analysis, data visualization, reporting, and collaboration for use on premises, at the desktop, in the cloud, and away from the office with mobile capability. BI solutions have the potential to be an essential tool for decision-making and strategy development.

Examples of how information can be used throughout a company, from marketing and sales to supply chain and finance, for tasks including:
— Measuring marketing campaign results
— Gaining visibility into cash flow, gross margins, and operating expenses
— Capturing insights about employees and prospective new hires to optimise HR processes and recruitment
— Tracking orders, supply chain trends and measuring supplier performance
— Forecasting revenues and transactions
— Optimising staffing levels
— Obtaining cross-enterprise views
— Uncovering new revenue opportunities and patterns

To make business intelligence an effective solution for business it has to be as user friendly and as accessible for all levels of management & employees throughout an organisation.

Solution types and considerations:
Single Platform Solution — a single platform solution approach offers an end-to-end solution that covers gathering, analyzing, and interpreting data with everything working together so that there are no compatibility issues offering a single, integrated platform of applications moving away from legacy business intelligence ecosystems with multiple solutions for reporting, discovery, analysis, and other functions.
Cloud Based Solution — a business intelligence solution should be easy to access by users across your enterprise and on the road. A cloud solution offers the highest potential for accessibility and availability. It can be accessed when and where it’s needed, for individual use or shared with coworkers.
Connectability — most business intelligence solutions have the capability to connect with one or more data sources. When choosing a solution that offers prebuilt connections, it’s easy to load and integrate data from diverse sources.
Augmented Analytics — augmented analytics simplifies and automates tasks employing embedded machine learning which helping users gather, analyse, interpret, and convey information. Augmented Analytics automates data preparation, collects information from multiple sources and consolidates it, accelerating the process and reducing the chance of errors.
Data Visualisation — many smart solutions come with data visualization, which provides the capability to automatically transform data into pie charts, graphs, or other type of visual presentation. Users can quickly and easily see and understand patterns, relationships, and emerging trends that might go unnoticed with a spreadsheet of raw numbers. With data visualization, users can get new and unique insights by creating rich data mashups. They can craft stories around their business with high-impact visuals. Data is pulled from internal and external sources.
Self-Service — to be a true business tool, a BI solution must be designed for businesspeople to use on their own and should be easy to navigate with some type of dashboard functionality so that customisation is not required giving users a choice of doing a task themselves without waiting for a response from IT. Users should have full control to load their data and analyze it from any angle to uncover issues and new opportunities.
Mobile — mobile BI solutions are available with voice-enabled access and real-time alerts allowing you to talk to your data using a search driven approach. You can view, analyze, and act on data in the cloud or on premises and create mobile analytical apps with rich, interactive visualisation without writing a single line of code. A personalised assistant can determine what business report and graphics are required for your business meeting. It can translate speech to text and alert you when new data is available to analyze.

To find out more about what types of BI and Data Analytics solutions I can build for you or to hire me, just get in touch below.

Portfolio

Selected Works

For everything else open-source, check out my GitHub and Codepen.

  • All
  • Frontend
  • Backend
  • Full Stack
  • Wordpress/CMS
  • Desktop/Mobile

Personal Training Website

Multi-Page Responsive Website

HTML | CSS | JavaScript

The Warehouse Gym

Smarthub E-Commerce Site

Full Stack | Backend PHP

HTML | CSS | JavaScript | PHP

The Warehouse Gym

Linkedin Clone

Web Application

React | Redux | Firebase

The Warehouse Gym

QuizMaster 5000

Quiz Web Application

React | Redux | Firebase | MaterialUI

The Warehouse Gym

Jokes Generator

Fetch API & async

HTML | CSS | JavaScript

The Warehouse Gym

Web Developer Quiz

JSON Integration

HTML | CSS | JavaScript | jQuery

The Warehouse Gym

Movie Info Database

RESTAPI & axios Integration

HTML | CSS | JavaScript | jQuery

The Warehouse Gym

GMIT Web Development

Quiz App | DOM Manipulation

HTML | CSS | JavaScript

The Warehouse Gym

Image Filter System

2D Convolution Filter System

Java

The Warehouse Gym

Gym Management System

Cloud Migration

MS PowerApps | Azure App Service

C# | ASP.NET | Azure

The Warehouse Gym

Locally Hosted DBMS

The Warehouse Gym

Microsoft Access Database

Schema Design and Development

The Dough Bros

The Dough Bros

Online Order & Management System

MS PowerApps | Azure App Service

C# | ASP.NET | Azure

Dynamic Wordpress Website

Codec Ireland Clone

E-Commerce & Blogging System

WordPress | WooCommerce Integration

The Warehouse Gym

Tinder Two Factor Auth

Frontend UI Clone

HTML | CSS | JavaScript | jQuery

Lotto Generator

HTML | CSS | JavaScript

Breakout Game

HTML | CSS | JavaScript

Web Application

The Warehouse Gym Project - Cloud Migration

Back to portfolio

The Warehouse Gym Migration Project

About the Project

Client: Final Year College Project
Date: 2020
Roles: Developer, Solution Architect, Team Lead
Technologies: ASP.NET | SQL | C# | Javascript | HTML | CSS

I developed this project between March and April as a final year project for a module called Cloud Infrastructure and Enterprise Services as part of a Bsc Hons in Business Information Systems in GMIT. The project consisted of the migration of a locally based database towards the Azure Cloud comprising both professional documentation and practical implementation. The project consists of a Frontend website #azurewebapp connected to an #sqlserver connected to 2x #powerapps for the management of data and functions for a use case I developed called"The Warehouse Gym" . The final project consists of a website which provides an online presence for the company and allows new customers to Join the gym by filling out a webform which in turn is submitted to our SQL server and accessible through the Microsoft PowerApp's for management by staff. Further functionality exists on the Microsoft PowerApp's to manage other functions for the gym such as customer admissions, staff salaries, membership management and more, allowing centralised storage and accessability on the Azure Cloud.

The background to the project was that we were tasked with operating as a cloud computing consulting company for a client who seeked to migrate their existing locally hosted database to the cloud with a budget allocation of €10,000. A guidance report and a technical report were created to outline the special and key considerations unique to our client. Aspects covered in the reports range from security & threat assessments, data migration considerations, costing and services, data security, reliability, maintainability, scalability, backup/restore and georeplication, integration with Microsoft and Azure ecosystems, pricing tiers, training and education, GDPR compliance, risk management and the steps outlining the development stages including the work involved. The final award was that of a first class honours result.

If you would like to check out this project and see it for yourself then visit.. http://warehousegym.azurewebsites.net/

Technologies Include

HTML

CSS

Javascript

C#

PowerApps

Microsoft PowerApps

Azure App Service

Azure App Service

Azure Cloud

Azure Cloud

SQL Server

SQL Server

.NET

Project Images

Project Videos

Database System

The Warehouse Gym Project - Local DBMS

Back to portfolio

The Warehouse Gym Project - Local DBMS

About the Project

Client: Final Year College Project
Date: 2020
Roles: Developer, Solution Architect, Team Lead
Technologies: Oracle, Microsoft Access

I developed this database as part of a group project between October and November as a fourth year project for a module called Application Development. This project combines elements we learned from previous modules such as Database Management Systems and Data Modelling as part of a Bsc Hons in Business Information Systems in GMIT.

The background to the project was that we were required to produce a Microsoft Access Database and a detailed specification for a small to medium sized company/organisation of our choice. The database specification included the following: Detailed Description of the Company and Purpose of Database, Mission Statement, Objectives of the Database, Rationale, Business Rules, List of Entities, Attributes, Assumptions, 1st, 2nd and 3rd Normal Form, List of fully Normalised Tables, Entity Relationship Diagram and Time Management Sheets. The project consisted of both professional documentation in terms of the production of a guidance document, technical report and practical implementation of the Database itself.

The end product resulted in an attractive looking application which is easy to use and provides a lot of functionality such as password protected login (Macros), management panel allowing overview of membership and admission statistics, ability to create reports (Queries), add new members, employees, staff wages, add memberships to customer profiles, configure gyms and membership pricing, and clock in and out functionality for both staff and customers of the gym with a live member management area listing all the staff and customers in the gym.

If you'd like to see the project in action, please watch the video below. If you'd like to request a copy of the database just get in touch with me.

Technologies Include

Oracle

Azure App Service

Microsoft Access

Project Images

Project Videos

Web Application

The Dough Bros Project

Back to portfolio

The Dough Bros Project

About the Project

Client: Final Year College Project
Date: 2020
Roles: Developer, Solution Architect, Team Lead
Technologies: ASP.NET | SQL | C# | Javascript | HTML | CSS

The Dough Bros Pizza Order, Delivery and Management System was another project I developed between March and April as a final year project for a module called Information Systems Development as part of a Bsc Hons in Business Information Systems in GMIT.

The background to the project was that we were tasked with building an information system for a business using both Agile and Waterfall methodology to improve business processes and we were given freedom of choice to develop what we wanted. A report required to be developed alongside the practical build itself, the report consisted of an accurate representation of the developmental stages of a realistic software development project which included business analysis phases such as; Feasibility studies, Requirements catalog's, Functional/Non-functional requirements, Organisational Chart's, Context Diagrams, Use Case Diagram, Entity Relationship Diagram (ERD), Data Flow Diagram's (DFD 0, 1 & 2), Business Process Model (BMP), Rich Picture, Sequence Diagrams, System Diagrams, Data Dictionary, Implementation plan and schedule in terms of Jira/Gantt Chart to include GDPR, training and change management and data governance. The build aspect required a working prototype of a system. I decided to keep the project as realistic, useful and practical as possible which is where the Pizza Order and Management System came into play. I decided to choose a real business (the Dough Bros) as the use case, as they actually did not have any online pizza order or table reservation functionality.

The project itself consisted of a Frontend website #azurewebapp connected to an #sqlserver connected to a #powerapp for the management of data and functions for a use case we developed called"Dough Bros" which is a popular and well respected and delicious 'dine-in' pizza restaurant based in Galway City, Ireland. The final project I developed is a ASP.NET web app website which provides an online presence for the company and allows new customers to order a pizza online by filling out a JavaScript form and submitting the form to our SQL Server hosted in Microsoft Azure. The order is submitted to the SQL server and the data (order and business information) is accessible and received by staff through a Microsoft PowerApp I developed for the staff to manage the orders. Further functionality exists on the PowerApp to manage other functions for the business such as managing reservations, the menu, costing and more, allowing centralised storage and accessability on the Azure Cloud. The final award was that of a first class honours result.

If you would like to check out this project and test it out for yourself then visit.. http://doughbros.azurewebsites.net/ and submit a pizza order!

Technologies Include

HTML

CSS

Javascript

C#

PowerApps

Microsoft PowerApps

Azure App Service

Azure App Service

Azure Cloud

Azure Cloud

Azure SQL

SQL Server

.NET

Project Images

Project Videos

Javascript Project

Lotto Generator

Back to portfolio

Lotto Generator Project

About the Project

Client: Second Year College Project
Date: 2018
Roles: Developer
Technologies: Javascript, HTML, CSS

I developed this Lotto Generator as a second year project for a module called Dynamic Web Development as part of a Bsc Hons in Business Information Systems in GMIT. It operates by randomly generating numbers between 1 and 49 and sorts them into an array, colouring them once generated and also prevents the same numbers being called per run.

Try it for yourself by clicking here to open the project in a new window..

Technologies

HTML

CSS

Javascript

Project Images

Javascript Project

Breakout Game

Back to portfolio

The Breakout Game Project

About the Project

Client: Second Year College Project
Date: 2018
Roles: Developer
Technologies: Javascript, HTML, CSS

I developed this Breakout Game as a second year project for a module called Dynamic Web Development as part of a Bsc Hons in Business Information Systems in GMIT. There are approx 230 lines of Javascript code comprising of variables, arrays and functions. Variables defined range from defining the canvas, starting point, sound effects, ball, paddles and bricks. Functions include drawing the ball, operating the score, drawing the bricks, the collision function itself, paddle controls, lives and colouring effects.

Try it for yourself by clicking here to open the project in a new window..

Technologies Include

HTML

CSS

Javascript

Project Images

Dynamic Website

Wordpress E-Commerce Site

Back to portfolio

Wordpress E-Commerce Project

About the Project

Client: Third Year College Project
Date: 2019
Roles: Developer
Technologies: Wordpress, Javascript, HTML, CSS

I developed this Wordpress E-Commerce Website for a college project between November and December as a Third year project for a module called Web Systems as part of a Bsc Hons in Business Information Systems in GMIT.

The emphasis of this project centered around development of an E-Commerce Website on Wordpress and implementing an SEO plan to ensure traffic optimization to the website. The brief we were given asked us to replicate an existing live website as close as possible and to produce professional documentation as you would expect during of the Web Development process. For the purposes of this project, the website I had chosen was Codec Ireland - the I.T company I served my Internship with.

The project report contained all you would expect from a web development project including: Introduction, Competitor Analysis, User Stories and Personas, Aims and Objectives , WordPress theme and plugin selection, SEO plan and strategy and Wireframes. The end solution comprises of a modern and sleek WordPress E-Commerce Website which is SEO friendly and incorperates lead generation tool through a popup plugin, subscription and contact form and also a fully functional shopping cart functionality.

Theme chosen is OceanWP, SEO tool used is Yoast SEO, WooCommerce shopping cart tool, Elementor page builder, Popup maker - lead generation tool, Mailchimp for WooCommerce for marketing campaigns and WPForms Lite - contact form builder.

If you would like to check out this project and see it for yourself then visit.. http://michaelogrady.x10host.com/codec/ or watch the video below.

Technologies Include

Wordpress

HTML

CSS

Javascript

Project Images

Project Videos

Dynamic Website

Personal Training Website - Under Construction

Back to portfolio

Personal Training Website - MOGSC

About the Project

This project is currently on hold, please check back soon.

Technologies Include

HTML

CSS

Javascript

Project Images

Image Filter System

2D Convolution Image Processing | Java

Back to portfolio

2D Convolution Image Processing | Java

About the Project

Client: H.Dip Software Development Personal Project
Date: 2021
Role: Developer
Technologies: Java

Main Features: 1. Filter image with a single filter or multiple filters. 2. Filter a directory full of images with a single filter or multiple filters. 3. Apply a user assigned custom filter.

Additional Features: 1. Image Render timer for each image using System.currentTimeMillis(). 2. Validation to check for file extensions - only allowing jpg, png, gif 3. New switch statement with input validation as loop 4. Kernel converted to enum 5. Error handling with throws Exception. 6. User assigned input and output directory 7. Edge detection using % width wrap of the pixel 8. User selected unput and output file location

Technologies Include

Java

Project Images

Contact

Contact Me

Location

🏡 Galway |📍 Mayo 🏡🚜 |☘️ Ireland

Discover

Loading
Error
Your message has been sent. Thank you!