Spiro Floropoulos

Architect, programmmer and sysadmin with a passion for technology and programming. Not to mention a couple decades of experience.

Spiro Floropoulos's DEV Profile

spiro@spirofloropoulos.com

My Blog

The highlights

Hobbies

Spending time with my daughter, programming (duh!), raspberry pi and video games. Mentoring - I've mentored a few programmers over the years and I really enjoy it. Frankly, the mentorship goes both ways. If you're interested in having a more experienced programmer mentor you, don't hesitate to reach out to me. I do it for free. :)

Strongest Areas of Knowledge

Javascript (vanilla, Node, jQuery, Angular, you name it), CSS, HTML, PHP, Linux, DevOps, SysAdmin, AWS, GIT

Projects I'm Proud Of

Sending Positive Vibes - Creator - I used barebones HTML, CSS and JS to create a simple PWA app where you can tap or click to send "positive vibes" to that part of the world (on a map). I used Openstreetmaps for the map source. I also used a geohashing library to maintain the data. As vibes are sent, the map is updated so you can see it.

Zolo - Senior & Lead Developer - Updated an older infrastructure to support 4 million pageview a day. Mostly with AWS tools. Implemented new procedures and tools that increased developer productivity significantly. Found and implemented areas that gained significant performance improvements.

CATSA - Senior & Lead Developer - Created back-end architecture that supports the main website plus their mobile apps. Airport security lineup staff across Canada use my system to update wait times.

TWiT - Senior (and only) Developer - I didn't build their flagship site (although I helped) but I did build an intricate internal system that managed their audio and video files, converted them to proper formats and automatically uploaded them to proper cloud services. Then a subsequent system that automatically notified the public (and updated the website) when new shows were available for consumption.

[Insert link to your closest Jaguar / Land Rover dealer here] - Yep. I was one of three architects on a deployment and management system for the apps that go into the head units on newer Jaguar / Land Rovers. This meant some time in Coventry too! The vehicles all communicate with a complicated back-end system that manages their OS versions as well as individual apps and their versions. Super cool.

Are you still reading?

If you want to know a lot more about my experience, keep going.

Employment

Note: Some of these positions overlapped when freelancing.


Sycle: Innovating Audiology Management Solutions

Tenure: 1 Year

Role: Senior Architect

Overview:

Sycle stands out in the realm of audiology management, offering a comprehensive product line that empowers owners and audiologists to seamlessly manage patients, inventory, and more, across departments, clinics, or offices.

Key Contributions & Impact:

  • Integration Mastery: Spearheaded the integration of 3rd party systems, notably Autofy, establishing a robust API-based connection to QuickBooks, thereby streamlining financial data management.
  • Architectural Innovation: Devised and implemented both monolith and microservices architectures, ensuring they could operate both independently and cohesively, aligning with varied project demands.
  • Collaborative Development: Worked hand-in-hand with the Product team, translating business requirements into architectural blueprints, ensuring alignment with product vision and client needs.

Responsibilities & Achievements:

  • Development Support: Facilitated development team kick-off meetings, providing clear insights and guidelines based on the established architecture, ensuring alignment and clarity across the team.
  • Problem Solving: Proactively identified and presented alternative architectural solutions, ensuring the team was equipped with multiple pathways to navigate challenges and achieve project goals.
  • Infrastructure Strategy: Collaborated with the devops/sysadmin team, integrating infrastructure considerations into architectural planning, ensuring scalability and performance optimization.
  • Technological Proficiency: Primarily utilized Laravel, Node, and React to create versatile and robust architectural solutions, aligning technology use with project demands and performance requirements.

Through strategic architectural planning and collaborative efforts, my tenure at Sycle was marked by innovative solutions, streamlined operations, and the successful navigation of technical challenges to deliver robust audiology management solutions.


PawBoost: Reuniting Pets with Their Families

Tenure: 2 Years

Role: Senior Developer

Company Insight:

At the heart of PawBoost is a dedicated team committed to reuniting lost pets with their families through the power of social media advertising, specifically leveraging targeted Facebook and Instagram ads. My journey with PawBoost was not just professionally rewarding but also emotionally fulfilling, contributing daily to a compassionate cause.

Key Contributions & Impact:

  • Data Integration Excellence: Played a pivotal role in enhancing PawBoost's reach and efficiency by integrating 3rd party shelter APIs. This strategic move allowed for the transformation and assimilation of crucial data into our database, expanding the network support for pet recovery.
  • Website Optimization: Spearheaded the initiative to optimize web performance, successfully boosting Lighthouse scores from the low 20s to impressive high 80s on critical site pages, significantly enhancing user experience and engagement.
  • Tool Standardization: Streamlined development processes by standardizing tools, incorporating Docker for a more efficient, consistent, and secure environment, thereby accelerating project timelines.
  • Simplification of Tools: Evaluated and simplified existing toolsets, identifying redundancies, and eliminating unnecessary elements like SASS, leading to a more agile and streamlined development process.
  • Leadership & Strategy: Actively engaged in strategic planning, reviewing business goals, formulating clear and actionable requirements, and providing leadership and management to developer teams, ensuring alignment with company objectives.

My tenure at PawBoost was marked by significant technical enhancements, strategic simplifications, and a hands-on leadership approach, all contributing to a more effective platform that continues to bring joy to families by reuniting them with their lost pets.


Zolo Canada: Pioneering Real Estate Digital Solutions

Tenure: 2 Years

Role: Senior Developer

Company Insight:

Zolo Canada stands as one of the premier digital real estate platforms in the country, offering comprehensive property listings and resources. My role was instrumental in not only enhancing the technical backbone of the services but also in pioneering new features and operational efficiencies within the organization.

Key Contributions & Impact:

  • Infrastructure Management: Oversaw the robust AWS infrastructure, including ec2 & rds, refining deployment procedures, and implementing scaling solutions, pivotal for sustaining the high-traffic website.
  • Performance Optimization: Conducted comprehensive site performance audits, initiating strategic enhancements that significantly boosted site responsiveness and user experience.
  • Custom Solutions: Authored multiple custom libraries in vanilla JS, tailored to meet unique operational needs, thereby enhancing feature availability and platform versatility.
  • System Administration: Entrusted with the comprehensive management of the PHP back-end infrastructure, ensuring seamless CRM integration and overall website functionality.
  • Version Control: Streamlined version control processes using GIT, enhancing team collaboration, code consistency, and deployment efficiency.
  • Team Leadership: Provided direction and support to a dynamic team of developers, fostering an environment of innovation, efficiency, and calculated risk-taking.
  • Mobile Development: Steered the consistent update and maintenance of iOS & Android applications, ensuring feature parity, and optimized mobile user experience.
  • Technical Debt Resolution: Proactively addressed and refactored technical debt across various codebases, fortifying system reliability, and performance.
  • SEO Initiatives: Executed critical SEO updates, involving intricate interface work and backend optimizations, significantly enhancing online visibility and user engagement.
  • Continuous Integration/Deployment: Implemented an advanced CI/CD pipeline using Jenkins, later transitioning to a custom solution for greater deployment agility and simplicity.

Through strategic leadership, technical acumen, and a hands-on approach, my journey with Zolo Canada was marked by significant milestones in performance optimization, system enhancement, and team leadership, contributing substantially to the company's position as a digital real estate leader in Canada.


InSite (1 year)

Senior Developer

These guys do a few things but, for the most part, they help to convert hard cover media into digital media. I helped them get a few features out the door in their ASP.NET platform and also to build out a few simpler sites for some of their clients who required something leaner. A lot of JS, CSS, HTML.

  • Responsibilities:
    • Provide feedback on updates to an internal system they had and then execute those updates.
    • Help to manually convert some hard cover media to HTML/JS/CSS by hand.
    • Provide additional conversion tools for specific cases that needed customized conversions. This included a node.js based tool.

AppDirect (3 years)

Senior Developer & Solutions Architect

I was involved in some of the best projects I've ever worked on. I spent a few months as a senior developer on some smaller teams and then I moved up to a technical lead role where I managed up to a dozen people and a couple of ongoing projects. We mostly focused on Java, Node and PHP. We also did a bunch of Drupal. Towards the end (like, a year) I was a solutions architect working directly under the CTO.

  • Responsibilities:
    • Lead several teams ranging from 2 other developers to 13. Also ranged skillset from jr to sr.
    • Work directly with the sysadmin/devops team to introduce new methods of managing infrastructure, deploying code and more. Also helped to beef up some practices. This also required cross interactions with the programming teams. Tonnes of AWS, EC2, ElasticSearch, RDS, Load Balacing, CDN, S3 and more.
    • Troubleshooting & on call devops working with Linux or Unix systems (mostly Redhat) and solving other infrastructure problems. Lots of late night calls to jump on a server and see why Apache was failing or ensure an Ansible playbook was working correctly.
    • Helped to create Jenkins projects / pipelines for use with Docker (sometimes Kubernetes was involved) and AWS. Some projects were internal facing and some were public facing.
    • Take client project scopes and convert them into technical architecture that could be executed by the programming teams & managed by devops over a long term period. Usually involved 99.99% uptime as part of the SLA agreements.
    • Helped to create some mobile apps for clients on ios and android.
    • Provide mentoring and leadership to individual programmers.
    • Interact with the board of executives to ensure teams had what they needed to accomplish high level goals at a business level.

Ravello Media (10 months)

Senior Developer

They have several hospitality companies (and, therefore, websites) that I got to work. It ranged from doing front-end website adjustments to working on their back-end booking / scheduling system, connecting to their hotel machines and more.

  • Responsibilities:
    • Refactor PHP into an OOP based system. Mostly using Laravel.
    • Help deploy and maintain code on EC2 & RDS instances.
    • Help to make front-end specific upgrades.

Sitepoint (6 months)

Premium PHP Editor

For a short while I had the privilege of managing the premium PHP channel on Sitepoint. I would reach out to developers and help them to come up with lessons, videos and other material for the channel. My life changed and I had to make a shift so I stepped down from this role.

  • Responsibilities:
    • Reach out to potential contributors to build relationships.
    • Work with contributors to support their creative material from start to finish.
    • Ensure finished material was properly handled for release.
    • Come up with ideas on material to create and keep in touch with the community in general.

Tabs & Spaces (1 year)

Freelance Consultant

I was one of the senior developers working on a Symantec and Norton forum / community site. This was heavily Drupal based, a mixture of 6 & 7, with a big emphasis on a javascript front-end.

  • Responsibilities:
    • Help create an OOP based thin layer on top of Drupal 6 & 7.
    • Help with a large number of front-end components (CSS / JS / HTML) using Angular.
    • Create and maintain a Drupal REST API for use on dynamic front-end components.
    • Assist the team in deployment methods and maintenance.

Crifkin (1 year)

Freelance Consultant

I did a number of smaller projects from a bit of javascript / html to some theming. Nothing too heavy but the projects required a bit of a senior hand.


TWiT (This Week In Tech) (2 years)

Lead Developer

In short, was an all-around computer engineer, as I helped them with everything from servers, networks and more to computers and advising them on any gadgets they needed or improvements to their computer systems that would help them become more efficient. However, my main focus was on web development with regards to their flagship site and a secondary site for their highest grossing show.

  • Responsibilities:
    • Create an internal system to take raw videos, automatically edit them and then ship them to multiple mediums for consumption.
    • Supervise a Drupal team on two websites they built to ensure the technical goals were met by the team.

BigFork Web Development (1 years)

Lead Developer

I was the lead developer on many of their client websites, helping them create new coding standards and managing their servers from time to time.


Coastal Sleep (4 years)

Lead Developer, Network Administrator, Computer Technician

I helped them upgrade their server and network infrastructure across three different offices so all their offices could communicate with each other more efficiently, which saved time and money. This role ended up being a good mix of both hardware and software work.


TechnoTribe (2 years)

Lead Developer

Provided a lot of CSS, HTML and PHP coding skills to build smaller websites or enhance existing ones. Also did some work with mobile friendly sites or converting sites to a mobile friendly platform.


Paintball Gear Canada (3 years)

Lead Developer

Paintball Gear Canada is one of the largest Paintball retail companies in Canada. It has a large retail and web presence. It began as a platform PHP e-commerce system that was eventually re-done so much to suit increasing demands that it is now a beast to maintain. However, it holds itself together quite well and is able to maintain traffic that results in millions of dollars in revenue each year.

There's more!

I have a lot more experience, going back at least ten years, so please feel free to ask.

Technical Skills

Full list of languages, systems or other things I know in order from strongest to not as strong.

Javascript (vanilla, lots of libs, Node), GIT, CSS, HTML, PHP, AWS, SysAdmin, DevOps, Linux (Ubuntu, CentOS, Redhat), Agile MySQL, Mongo, ElasticSearch, Google Analytics, Google APIs, Lucene, SOLR, Drupal, Wordpress, Laravel, Symfony, Zend, Magento, Apache, Scalable Infrastructure, Load Balancing, Perl, C, C++, C#, Window, Mac, iOS Dev (Swift & Objective-C), Android (Java), SEO

There's even more!

I have a decent list of websites I've worked on so go ahead and ask me for more!

Thank you for taking the time to review my portfolio. I hope to hear from you soon.