computer c code

Software Engineer/Machine Learning Engineer

More than 30 years of experience in design, architect, implement, deploy and maintain, medium to large scale software systems using agile methodologies. Currently, also working as a Machine Learning engineer (MLE) in deploying and maintaining ML models.

Roles

I have performed several roles in the the software engineering projects I have been involved, namely:

  • Program/product manager
  • Lead software engineer
  • Senior software engineer
  • Full-stack software engineer, Back-end software engineer
  • Scrum master, Product owner, Product manager, Solution Owner
  • Machine learning engineer (MLE)

Skills and Technologies

Software development methodologies:

  • Object-oriented design
  • Agile (Scrum, Microsoft Agile, Kanban)

Programming languages:

  • C# (.Net Core, .Net)
  • Java (including multithread applications)
  • Python
  • C and C++ (academic level only)
  • Javascript
  • Basic, Cobol, RPG II & Clipper (in my old days…)

Machine Learning:

  • Python, PyTest
  • PySpark, Databricks, Airflow, DVC (Data Version Control)
  • Azure, GCP
  • BigQuery, ADLS, Terraform
  • LLMs (using Langchain and Langserve)
  • Dataiku

Backend:

  • .Net Core microservices, Kafka, Cassandra, BigQuery, Redis, Kubernetes, ElasticSearch, Hangfire
  • Tomcat (Servlets, REST/SOAP APIs), IIS (REST/SOAP APIs), Node.js
  • IBM MQ (Message Queue), Kafka
  • MySQL, Oracle, Server, Cassandra, MongoDB, BigQuery
  • DBase (in my old days…)

Frontend:

  • React
  • GraphQL

Cloud:

  • Google Cloud Platform (GCP) for my MLE tasks.
  • Microsoft Azure

Version Control, Work Management and CI/CD:

  • Azure DevOps, Team Foundation Server
  • Jira, Confluence
  • Jenkins
  • Git & GitHub
  • Visual SourceSafe (in my old days…)

IDEs:

  • Rider, IntelliJ Idea, Netbeans, PyCharm, WebStorm
  • Visual Code, Visual Studio & Xamarin
  • CA-DBfast for Windows (in my old days…)

Database Clients & Other Tools:

  • HeidiSQL, DBeaver, DBForge, DataGrip, SoapUI, Postman.

Projects

Masdima: Multi-agent System for Disruption Management, helps the IOCC operators, to manage disruptions and give a global vision and monitoring of the airline operations, i.e., flights, aircraft (including maintenance), crew and passengers and, at the same time, improve punctuality, reduce costs and increase passenger’s satisfaction.
Detects events, assess the impact of the events on the operation, generates and selects the best solution to recover from the disruptions (for example, by rescheduling resources). The optimisation is accomplished through a reinforcement learning agent based negotiation.
Technologies & Tools: Node.js, javascript, Bootstrap, HTML5, Java (multithreads), Jade (software agents framework), Tomcat (servlets), REST/SOAP services, MySQL, Git, AzureDevOps, IntelliJ idea, HeidiSql, SoapUI.

Masdima Passenger Reaccommodation: An application for Android and iOS developed with Xamarin that allows airline passengers to negotiate with the airline, the best alternative flights when faced with missed connections.
Technologies & Tools: Xamarin, C#, REST/SOAP services, SQLite, Git, AzureDevOps, Visual Studio, SoapUI.

Masdima Airline Operational Control Center: An application for Android and iOS developed with Xamarin that allows the users of the airline operational control centre to perform their operational tasks using a smartphone or tablet.
Technologies & Tools: Xamarin, C#, REST/SOAP services, SQLite,Git, AzureDevOps, Visual Studio, SoapUI.

Portal DOV: A web application developed in .Net (Asp.net & C#) that supports the daily operation of Tap Air Portugal, allowing the crew members and back office users to perform their daily operational taks. Includes several integration capabilities with the different ground servers.
Technologies & Tools: IIS, Asp.net, C#, REST/SOAP services, Oracle, Team Foundation Services, Visual Studio, DBForge, SoapUI.

anonymous pilots in aircraft cockpit flying over sea
Electronic Flight Bag: Several windows forms applications deployed in a windows tablet that allows Tap Air Portugal flight crew to perform their cockpit tasks. Includes several integration capabilities with the different ground servers.
Technologies & Tools: IIS, Windows Forms, C#, REST/SOAP services, SQLite, Oracle, Team Foundation Services, Visual Studio, DBForge, SoapUI.

anonymous woman browsing modern tablet
Digital Cabin: An application for Android and iOS developed with Xamarin that allows Tap Air Portugal Cabin Crew members to perform their off-board and on-board tasks.
Technologies & Tools: Xamarin, C#, REST/SOAP services, SQLite, Team Foundation Services, Visual Studio, SoapUI.

cabin of aircraft with passengers on board
Crew Management and Planning System: A software system for planning and scheduling flight and cabin crew flights. Used at Tap Air Portugal, Air Macau, Portugal Airlines and Air Luxor.
Technologies & Tools: Clipper, DBase, Visual SourceSafe, CA-DBFast for Windows.