Alessandro Iob, Developer in Klagenfurt, Austria
Alessandro is available for hire
Hire Alessandro

Alessandro Iob

Verified Expert  in Engineering

Software Developer

Location
Klagenfurt, Austria
Toptal Member Since
August 28, 2013

Alessandro is a top freelance architect and developer with a number of skills. He has designed and developed API services, games, process automation systems, fault-tolerant distributed systems, and multi-platform applications. Alessandro has also reverse-engineered PLCs and interfaced with refrigerator systems.

Portfolio

Mitsubishi Electric
Python, OAuth 2, OpenAPI, SAML, PostgreSQL, Swagger, XML, JSON...
The RealReal
Elixir, BigCommerce, APIs, eCommerce, System Design, gRPC, Apache Kafka...
Napster
Google Cloud Platform (GCP), Java, Node.js, Cloud Architecture, Cloud Migration...

Experience

Availability

Part-time

Preferred Environment

Linux, OS X, Docker, Kubernetes, Amazon Web Services (AWS), Azure, Python, Elixir, TypeScript, C

The most amazing...

...software I've built is a multi-platform, multi-user, multi-tier, fault-tolerant distributed platform for process automation.

Work Experience

Senior Back-end Architect and Developer

2022 - PRESENT
Mitsubishi Electric
  • Helped the company build a new sales and project design system, designing and building the back-end application.
  • Analyzed the system needs and solutions' design. Implemented the back-end services (Python and PostgreSQL).
  • Handled the integration with legacy systems (SAP and custom internal system), including reverse-engineering databases and data formats.
Technologies: Python, OAuth 2, OpenAPI, SAML, PostgreSQL, Swagger, XML, JSON, JSON Web Tokens (JWT), REST, FastAPI, SQLModel, PDF, LaTeX

Elixir Architect

2022 - 2022
The RealReal
  • Served as the Elixir-side architect in charge of the migration from the internal eCommerce implementation to BigCommerce.
  • Analyzed a vast Elixir codebase to detect critical issues and provide possible solutions.
  • Recommended appropriate integration patterns. Provided reference implementations for the required integrations.
Technologies: Elixir, BigCommerce, APIs, eCommerce, System Design, gRPC, Apache Kafka, PostgreSQL, BigCommerce API, Frameworks, Erlang (OTP), Erlang, Architecture, Technical Leadership, GraphQL, JSON Web Tokens (JWT)

Senior Cloud Architect

2022 - 2022
Napster
  • Helped the company move from an ad-hoc data-center architecture to a cloud-based one while improving all the platform metrics and reducing engineering pains and general operating costs.
  • Handled inter-team communication and relations, moving from a siloed-centric environment to a more open and communicative one.
  • Helped integrate a new CDN (Fastly). Evaluated, selected, and incorporated a new payment solution (Chargebee) and identification solution (Auth0).
  • Evaluated, selected, and integrated logging and monitoring tools for the Google Cloud and the data center systems (Instana).
  • Redesigned the partners' feed infrastructure, adopting Google Workflows and Cloud Run jobs as the main tools.
Technologies: Google Cloud Platform (GCP), Java, Node.js, Cloud Architecture, Cloud Migration, Terraform, Auth0, Chargebee, Instana, Google Pub/Sub, Elasticsearch, MongoDB Atlas, Fastly, Architecture, Technical Leadership, CI/CD Pipelines, OAuth 2, Swagger, JSON Web Tokens (JWT)

Engineering Lead

2020 - 2021
Endeavor
  • Worked with the leadership and product teams to help define and implement multiple new product lines.
  • Designed and implemented the internal libraries and generator tools to enable the fast creation of new microservices using Node.js, TypeScript, TypeORM, and Kubernetes.
  • Supported out-of-the-box configurations for authorizations, DB migrations, Swagger docs, UI, and Kubernetes.
  • Created and implemented the MVP for the company-wide data platform system using Python, Prefect, Dask, DBT, and Snowflake.
  • Built an accounts management microservice used by multiple projects. Supported seamless joined accounts from AWS Cognito, Auth0, and major social platforms.
  • Built and developed a payment microservice used by multiple projects. It supports various payment providers such as Stripe and Plaid, methods like CC and Wire, and flows.
  • Designed and co-developed the talent management and booking service for the OpenStage project, including integration with external companies.
  • Implemented the core front-end automatic testing functionality via Cypress.io to be used by the QA team.
Technologies: Node.js, DevOps, Python 3, Dask, Prefect, Data Build Tool (dbt), TypeScript, PostgreSQL, Amazon RDS, Docker, Docker Compose, PagerDuty, Slack API, Datadog, Snowflake, Kubernetes, Segment.io, Autopilot, Stripe API, Stripe Connect API, Auth0 API, Amazon Cognito, Data Integration, Plaid API, Cypress, Billing Systems, ETL, Continuous Deployment, Microservices, Amazon Web Services (AWS), REST APIs, Software Architecture, Interviews, Agile Sprints, Secure Containers, Event-driven Programming, Distributed Programming, Data Pipelines, Technical Leadership, Web Development, CI/CD Pipelines, Plaid, OAuth 2, Swagger, JSON Web Tokens (JWT), OpenAPI

Architect | Tech Lead

2018 - 2020
EY (Ernst & Young) - EY Global Services (Ireland)
  • Helped design and implement a system used by thousands of users and clients to automate the audit of the edge funds.
  • Contributed to this project, which allowed the company to acquire clients at a scale that was impossible before it—reducing onboarding times from many months to a couple of weeks and processing times from days to minutes.
  • Managed relations and product buy-in with and for partners, execs, engineers, and end users—on-site and remotely.
  • Helped the distributed team embrace and use sound engineering practices like proper documentation, code reviews, code and configuration revision management, and CI/CD.
  • Worked as an architect for multiple products (WAMapp, Confirm, Comply). Helped the team interview and hire new managers and engineers.
  • Single-handedly designed and developed a high-performing Docker-based pipeline and job processing system, initially to emulate an in-development enterprise system and later to completely sunset it and become the production solution.
  • Achieved considerable savings in development and operational costs: the entire system can run from a laptop up to a cluster, allowing quick onboarding of clients and new auditors.
  • Designed and developed an advanced, data-driven, and configuration-driven orchestration system able to handle all the highly-custom data processing flows.
  • Designed and helped implement a data identification subsystem to identify, pre-process, and clean/fill heterogeneous and unreliable inputs.
  • Ensured all systems passed strict info-security implementation, deployment, and legal checks.
Technologies: Node.js, PostgreSQL, Python 3, TypeScript, Flask, Pandas, Vue, RabbitMQ, Docker, Kubernetes, Azure, Vagrant, Ansible, Trifacta, ETL, Continuous Deployment, Microservices, Hadoop, REST APIs, Software Architecture, Cloud Architecture, ELT, Solution Architecture, Interviews, Agile Sprints, Secure Containers, Docker Swarm, Distributed Programming, Data Pipelines, Architecture, Technical Leadership, SQLAlchemy, CI/CD Pipelines, OAuth 2, Swagger, JSON Web Tokens (JWT)

Architect | Lead Developer

2017 - 2018
Johnson & Johnson - Health IT
  • Developed a proxy REST service to transparently handle personal and medical data residency requirements for Salesforce services and medical appliances.
  • Created a Node.js server running inside the Apigee Edge proxy system, taking advantage of all the provided functionalities for endpoint, target, and error handling.
  • Architected multi-tenant data storage using the Azure Table Storage service.
  • Fully documented the software using OpenAPI specs.
  • Wrote a small custom data-driven stress test suite to validate implementation and performance.
Technologies: Node.js, Apigee, Azure Table Storage, Enterprise, Continuous Deployment, REST APIs, Event-driven Programming, Data Pipelines

Technical Screener

2015 - 2018
Toptal
  • Conducted hundreds of technical interviews in a very selective environment, being a core team member for many years.
  • Was exposed to all sorts of human, cultural, and technical approaches to a wide range of problems and projects.
  • Developed my soft skills to a great extent; it was a mind-opening experience.
Technologies: Interviews

Platform Architect | Engineering Lead

2017 - 2017
Alive5
  • Designed a scalable, plugin-based microservice architecture for an SMS, chat management, and payment system.
  • Helped the team adopt best practices like code reviews, CI/CD pipelines, and automatic documentation.
  • Developed the core framework implementing the proposed architecture using Node.js and TypeScript.
  • Provided extensive documentation and guidelines to allow the team to continue the transition from the legacy application to the new platform.
  • Designed and implemented a custom data store abstraction for DynamoDB and SQL-based systems.
  • Implemented easy-to-use and scalable event sub-systems using Socket.IO and Redis.
Technologies: JavaScript, Sails.js, Mocha, Stripe API, PayPal API, WebSockets, PubSubJS, Test-driven Development (TDD), Amazon Web Services (AWS), Node.js, TypeScript, Socket.IO, Twilio API, Amazon DynamoDB, Amazon RDS, Redis, Docker, Billing Systems, Continuous Deployment, Microservices, Software Architecture, Cloud Architecture, Agile Sprints, Secure Containers, Event-driven Programming

Platform Architect | Engineering Lead

2015 - 2017
AuctionMobility LLC
  • Helped the company transition from manual management of client resources to a fully automated system, allowing sensible gains in client onboarding, resource usage optimization, and reliability—all while reducing general engineering costs.
  • Designed and developed a REST API service that controls the whole company infrastructure from automatic EC2 instances provisioning, application deployment, service monitoring, and incident notification down to DNS management.
  • Designed and developed a distributed web socket service for real-time event filtering and propagation to the web, iOS, and Android client applications.
  • Designed and developed a REST API service that automates client configurations and asset generation for back-ends, web, iOS, and Android clients with an internal distributed job queue and a lightweight asset proxy.
  • Designed and developed a Node.js software development kit (SDK) for the CardConnect credit card processor API.
  • Designed and developed a Node.js SDK for the Bill.com invoices processor API.
  • Designed and developed many internal tools, like a SQL-like Redis querying tool for event analysis and management or AWS SNS integration.
  • Integrated external services like payment processors (Stripe, CardConnect, NMI, and PayPal), DNS services, AWS services, email/mailing list services, push notifications (APNS, GCM), and proprietary API services.
Technologies: JavaScript, Node.js, REST, PostgreSQL, Redis, Socket.IO, PagerDuty, Billing Systems, Microservices, Amazon Web Services (AWS), Stripe API, Software Architecture, Cloud Architecture, Agile Sprints, Event-driven Programming

iOS Game Developer

2009 - 2016
Kismik
  • Founded my little game company to publish my games for iOS.
  • Developed and published my first game, "Be2 - Escape from Pingland," which was featured in the "News & Noteworthy" section of the USA Apple App Store and almost all the other app stores as well.
  • Created a custom game engine based on Cocos2D, with an integrated Lua scripting engine, in-app purchase support, level auto-reload from the external editor, a networked debugger, and control system scriptable in Lua.
  • Developed a multi-platform custom level editor using Python and Qt. The editor can connect to a running game instance, whether a simulator or device and update levels and configurations as the game runs.
Technologies: Lua, Python, C, Objective-C, REST

iOS Developer

2015 - 2015
Westwing Home & Living
  • Integrated with the existing team and successfully converted and extended the company's iPad application to a Universal iOS 7/8/9 application using size classes, Auto Layout, and some magic.
  • Implemented unit tests for UI and business logic to improve and perform extensive debugging.
  • Worked in an Agile environment. Performed daily code reviews.
Technologies: Objective-C, Data Structures, Core Video, Facebook API, Twitter API, Interface Builder, Unit Testing, iOS, Algorithms, GitLab, Jira, Adobe Photoshop, Facebook SDK

iOS Developer

2015 - 2015
Development Agency
  • Developed an augmented reality catalog for a light manufacturing company (Linea Light AR).
  • Handled catalog synchronization with a remote server, which optimized updates and enabled downloading of required assets.
  • Implemented searchable catalog content. Used Realm.io for all database-related tasks.
  • Handled positioning of augmented reality 3D assets on a 2D image acquired from the device camera.
  • Implemented pattern scanning and linking to a product's 3D asset or catalog entry.
  • Developed an action system to bind the MetaIO AREL scripting system to the internal application catalog API.
Technologies: AFNetworking, Augmented Reality (AR), Realm, iOS SDK, Objective-C, REST

Software Architect | Developer

2010 - 2015
Freelance
  • Developed a multi-platform mobile application using PhoneGap/Cordova and Sencha Touch for operational instructions consulting and report input and submission by machine operators.
  • Developed an iOS application for the top soccer market news site in Italy.
  • Designed and developed the API service for a luxury hotel auction site. Supported clustering and managed auth, real-time auction notifications via Socket.IO, Apple, and Google push notifications, payment processing, and back-office management.
  • Developed a multi-user ERP system for offer management, final accounting, company analysis, data collection, and visualization from external sources, specifically accounting software, databases, custom APIs, web services, and PLC hardware.
  • Reverse-engineered PLC code and developed data collection systems.
Technologies: JSON, Core Data, iOS, Ext JS, Node.js, SQL, JavaScript, Python, C, Objective-C, REST APIs, Software Architecture, Cloud Architecture, Secure Containers, Event-driven Programming, REST

CEO | CTO

1999 - 2009
Startup
  • Designed and developed a multi-platform (Linux, OS X, Windows, Solaris, IRIX), multi-user, multi-tier (native Python/Qt UI, central configuration server, distributed agents), distributed (nodes seen as a single API) platform for process automation.
  • Managed a development team of six people scattered all over Europe.
  • Managed large deployments of our system (>500 retail points) while developing custom solutions like electrical spike prevention, refrigerator control, and remote PLC configuration and data collection.
  • Designed and implemented custom 3D visualization systems (using OpenGL) for real-time display of the operational status of production plants using data collected in real-time from the plants' PLCs.
  • Developed a geographically distributed surveillance system featuring real-time video analysis for motion detection (with priority and inactive zones), sensors' data acquisition and analysis, and programmable custom response logic.
Technologies: SQL, Perl, C++, C, Python, REST APIs, Software Architecture, Cloud Architecture, Event-driven Programming, REST, Distributed Programming

Software Developer | System Administrator

1998 - 1999
Freelance
  • Developed software to optimize paper production planning and cutting for a paper mill company. Reduced the planning process time from five or six hours to five minutes while enhancing the paper/waste ratio to almost 97%.
  • Created software tools used to control, integrate, and enhance the functionalities of not-interoperable systems like cash counters, electronic scales, and refrigerators.
  • Pioneered and published several extensions and libraries on CPAN for the Perl programming language.
  • Implemented IT basics and networks and taught programming courses held by European Community projects. Managed a few Windows networks.
Technologies: SQL, Assembler x86, C, Perl

Software Developer | System Administrator

1997 - 1998
Network Provider
  • Developed dynamic websites and eCommerce solutions using Perl.
  • Engineered network management and data collection utilities used to facilitate network and client administration and billing.
  • Designed, configured, and administered database servers, web servers, file servers, proxy servers, and firewalls used by clients in both the private and public sectors.
  • Configured and managed Linux, Windows, and Cisco networks. Also configured and managed international VPNs.
Technologies: SQL, C, Perl

Software Developer | System Administrator

1992 - 1996
Freelance
  • Co-developed a 2D graphic engine for the Commodore Amiga using a mix of C and Motorola 68000 assembly language. Used the engine to show advertisements and information.
  • Collaborated on the development of software to serve as a driver for the Commodore Amiga to control a massive display used for showing information/advertisement during public events.
  • Configured and administered MS-DOS and Windows 3.1 networks.
  • Developed software to perform data extraction and analysis from proprietary databases using Perl.
Technologies: Perl, C, Assembler 68000, Assembler x86

Be2 - Escape from Pingland

https://github.com/alexiob/Be2
My first commercial game! It takes the Pong game concept and twists it: you control the ball, not the paddle.

This simple change opened a whole world of possibilities, as I was able to design levels inspired by games such as Breakout, Pitfall, Doodle Jump, and many others. And as this was an escape game, I used one of the best escape TV shows ever as a baseline for the plot: The Prisoner!

To implement all these design ideas, I had to develop a custom-level editor. Besides letting me draw the levels, it also let me implement Lua scripted logic for every single entity in the game.
I wrote it using the marvelous Python and Python/Qt wrapper/library: this choice gave me instant platform portability and a high-speed development cycle.

The game could be controlled from the game editor: level uploading, script tweaking, and many other things were possible almost in real-time.

The game becomes a little core wrapped by a Lua scripting engine with binding for almost every system functionality (graphics, sounds, music, in-app purchase, social functionalities) and a network-attached console to execute commands and load/save data from local or remote sources.

BidAway API

https://twitter.com/bidaway
An auction platform for luxury hotel rooms.

Auctions lifecycle, payment processing, real-time notifications (socket.io, mobile push notifications, email), CDN management, and more had to be implemented in the API service.

Eventually, over the years, the platform became https://bizaway.com/

Some of the features I developed:
• a persistent scheduler supporting distributed events
• an attachment management system that is resource-independent and can manage data on different CDN systems
• a few CDN drivers
• a protocol-independent mobile push notification service
• an authenticated socket.io server with bi-directional RPCs.
• payment processor system
• automatic and transparent database reconnection
• self-documenting APIs with fake data support

Devil Framework

http://www.python.org/about/success/devil/
I have architected the Devil Framework as a platform where developers could easily create and deploy systems to collect, integrate, correlate, manage and visualize all information produced and consumed by heterogeneous networked hardware and software technologies. I also acted as the lead developer.

It was used to implement management and plant integration solutions for business groups like manufacturing, distribution, etc., with production and business units distributed all over the country.

The back end provided a unified environment for data collection, analysis, and archiving in a distributed system where each component was seen as part of a single "machine."

Configurations and plugins could be installed and propagated to any node of the system.

The system supported permanent and intermittent connections between nodes, and all data was transmitted over secure channels.

The graphical user interface was written using Python and the Python/Qt library. The UI was dynamically extensible using plugins, was an integral part of the distributed RPC and node discovery system.

The custom user interface forms and scripts could be developed using an interactive editor.

The system supported scripts and forms versioning.

ForthVM

https://github.com/alexiob/forthvm
Forth-like VM/Interpreter written in Elixir.

This is a VM-as-a-library; it is fully preemptive, supports multiple cores, multiple processes. inter-process events, I/O interception, and custom dictionaries.

Languages

JavaScript 6, TypeScript, Python, JavaScript, Elixir, Objective-C, C, Domain-specific Languages (DSLs), SQL, Bash, Snowflake, SQL-99, Erlang (OTP), Lua, Assembler 68000, Perl, GraphQL, C++, Erlang, Smalltalk, Go, Swift, Assembler x86, Forth, Java, Python 3, SAML, XML

Frameworks

Phoenix, Express.js, XCTest, Core Data, iOS SDK, Ext JS, Cocos2d, Qt, Django, Web2py, Sencha Touch, RestKit, Flask, OAuth 2, Swagger, JSON Web Tokens (JWT), Phaser.io, Hapi.js, PhoneGap, Spark, Hadoop, AFNetworking, Zope, Flutter, Cypress, gRPC, Sails.js, Core Video

Libraries/APIs

Dask, Segment.io, Redis Queue, Stripe API, Socket.IO, Node.js, CardConnect, Stripe, HTML5 Canvas, CocoaPods, jQuery, PyQt, AMQP, Vue, Slack API, Pandas, Vue 2, Plaid API, SQLAlchemy, OpenAPI, Core Animation, Twitter API, Facebook API, Google+ API, SpriteKit, ØMQ, PySpark, Facebook SDK, Twitter SDK, OpenGL, REST APIs, React, Apigee, Twilio API, Auth0 API, Braintree API, BigCommerce API, Stripe Connect API, PayPal API, PubSubJS

Tools

AWS SDK, GitHub, Docker Compose, Auto Layout, Pytest, Xcode, Git, Ansible, Vagrant, VirtualBox, Packer, RabbitMQ, Docker Swarm, Plaid, Jupyter, AWS ELB, Subversion (SVN), NGINX, Adobe Photoshop, Mocha, Amazon Cognito, Adobe Sign, Terraform, Auth0, Instana, MongoDB Atlas, Fastly, Interface Builder, GitLab, Jira, LaTeX

Paradigms

Back-end Architecture, Test-driven Deployment, Microservices, REST, Functional Programming, Continuous Deployment, Agile Software Development, Continuous Integration (CI), Event-driven Programming, Cross-platform, Model View Controller (MVC), Asynchronous Programming, Object-oriented Programming (OOP), Unit Testing, Test-driven Development (TDD), ETL Implementation & Design, Event Sourcing, Agile, Azure DevOps, ETL, Agile Workflow, Lambda Architecture, Distributed Programming, CQRS, DevOps

Platforms

Linux, iOS, Docker, Amazon Web Services (AWS), Heroku, Amazon Alexa, OTP, AWS Lambda, Nerves, Kubernetes, Parse, MacOS, AmigaOS, Apache Kafka, Azure, OS X, Visual Studio Code (VS Code), Windows, PagerDuty, Google Cloud Platform (GCP), BigCommerce

Storage

JSON, Data Pipelines, Amazon DynamoDB, Elasticsearch, Redis Cache, Redis, Amazon S3 (AWS S3), SQLite, Realm, PostgreSQL, MongoDB, Cassandra, Memcached, EventStore, HDFS, Riak, Azure Table Storage, Datadog, Data Integration

Other

Prefect, Phoenix LiveView, Back-end, Billing Systems, NMI Payment Gateway, WebSockets, Network Programming, Unix Shell Scripting, ETL Development, ELT, Enterprise, Software Architecture, Apogee, Secure Containers, Code Review, Agile Deployment, Agile Sprints, Solution Architecture, Project Lifecycle, Interviews, Cloud Architecture, Full-stack, Trifacta, Trifacta API, Data Architecture, APIs, API Integration, Architecture, Technical Leadership, Open Source, Web Development, CI/CD Pipelines, FastAPI, SQLModel, Industrial Internet of Things (IIoT), Internet of Things (IoT), MinIO, EventBus, Distributed Systems, Charts, Augmented Reality (AR), Size Classes, User Interface (UI), Amazon RDS, Data Build Tool (dbt), Autopilot, Interpreter Design, Virtual Machines, TypeORM, SCADA, Chargebee, Pub/Sub, Cloud Migration, Google Pub/Sub, eCommerce, System Design, Frameworks, Data Structures, Algorithms, PDF

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring