Luca Salvarani

Biography

I'm a Software Developer and Open Source enthusiast with a passion for automating tedious tasks and optimizing workflows.

I have a passion for learning new technologies, which has led me to explore various programming languages and frameworks over the years.

I'm always looking for new challenges and opportunities to grow my skills and contribute to exciting projects.

Experience

Automation developer, Re-Edit S.r.l.

Java developer for Unicredit

Dec 2022 – presentRome, Italy

  • Maintained, modernized and developed new features for complex legacy Java EE 8 internal applications used to automate server provisioning, configuration tasks, healthcheck polling and other IT operations; some of the technologies used were CDI, JPA and JSF/Vaadin, with the application deployed on IBM WebSphere Liberty
  • Developed and maintained automation scripts in Bash, Python and Perl to support various IT operations tasks
  • Developed and maintained Jython 2.1 scripts to automate WebSphere Application Server administration tasks, leading to the creation of jython21-backport to improve the development experience
  • Worked with Oracle databases, including writing and optimizing SQL queries, stored procedures, and triggers to support application functionality
  • Integrated Ansible Automation Platform with existing automation tools to streamline IT operations processes
  • Maintained internal build and CI/CD tooling based on Apache Maven, Jenkins and GitHub Actions
  • Used Git for version control and GitHub Issues and Projects for task management and team collaboration

Automation developer, Re-Edit S.r.l.

CISCO Network device analysis for IPZS

Apr 2024 – Sep 2024Rome, Italy

  • Development of Perl scripts to automate data retrieval from a large number of CISCO network devices
  • Automatic testing of the developed scripts using GitHub Actions, ensuring reliability and correctness between releases

Business Monitoring, Re-Edit S.r.l.

Business Monitoring for Generali

Jun 2022 – Nov 2022Rome, Italy

  • Used Microfocus Application Performance Management (APM) to monitor business processes and applications
  • Maintained and updated monitoring scripts to ensure accurate data collection and analysis

IBM WebSphere Application Server operator, Re-Edit S.r.l.

WebSphere Application Server operator for Trenitalia

Feb 2021 – Jun 2022Rome, Italy

  • Worked on 8-hour shifts (including nights and weekends) to ensure 24/7 coverage
  • Monitored and managed production and non-production WAS cells, LDAP and MQ servers
  • Basic WAS-related Linux server administration tasks, such as user management, disk space monitoring and cleanup
  • Responded to tickets and incidents, providing quick resolution to minimize downtime
  • Performed routine maintenance tasks, including application deployments, server restarts, and log analysis/troubleshooting
  • Developed and maintained scripts (Bash, Jython, Perl) to automate common tasks, improving efficiency and reducing errors
  • Developed an internal Javascript tool to automate the ticketing system, reducing manual work
  • Developed and maintained multiple Python scripts that automated end-to-end tests of various Trenitalia web applications, improving reliability and reducing manual testing effort

IBM DB2 operator, Re-Edit S.r.l.

Database operator for Trenitalia

Jan 2020 – Feb 2021Rome, Italy

  • Worked on 8-hour shifts (including nights and weekends) to ensure 24/7 coverage
  • Monitored and managed production and non-production DB2 databases
  • Execution of DML/DDL scripts

IBM z/TPF Mainframe operator, Re-Edit S.r.l.

Mainframe operator for Trenitalia's IBM z/TPF system

Nov 2018 – Feb 2020Rome, Italy

  • Worked on 8-hour shifts (including nights and weekends) to ensure 24/7 coverage
  • Monitored and managed the IBM z/TPF mainframe system, ensuring its smooth operation and performance
  • Handled system alerts, performed routine maintenance tasks (recoup, backup on tape), and responded to incidents to minimize downtime
  • Build, deploy and rollback of the seat reservation application on production and no-production environments
  • Handling of system backups (on multiple operative systems) via Tivoli Storage Manager (TSM)

Junior Software Developer, Team Office S.r.l.

Web developer for internal web applications

Jan 2018 – Sep 2018Rome, Italy

  • Used PHP, JavaScript, HTML/CSS, and SQL to develop and maintain the web application powering the company operations
  • Collaborated with a small team to gather requirements, design features, and implement solutions
  • Used C# to develop an ETL software to import suppliers Excel pricing lists into the company database and to syncronize appointments between the internal calendar and Outlook
  • Basic IT help desk tasks, including hardware and software troubleshooting, user support, and network maintenance

Projects

setup-jython

GitHub Action for setting up Jython in GitHub workflows

May 2023 – present

  • Easy-to-use GitHub Action to install and configure Jython interpreters in CI/CD pipelines
  • Accepts same parameters as the setup-python GitHub Action, making it familiar to use
  • Supports all Jython versions from 2.0 to 2.7.3, on Windows, Linux, and macOS runners

jython21-backport

Backporting of some newer Python features down to Jython 2.1

May 2023 – present

  • Support for both CPython and Jython interpreters down to version 2.1
  • Backwards compatibility ensured by automatic testing against multiple Jython and CPython versions (on different operative systems) using GitHub Actions (powered by the setup-jython action).
  • Implemented features include: json module (Python >= 2.6), pathlib.Path class (Python >= 3.4), bool class (Python >= 2.3), sorted function (Python >= 2.4)

column-ansi

Partial Perl implementation of the column shell command

Dec 2021 – present

  • Formats its input into multiple columns, similar to the Unix column command, but with support for ANSI color codes
  • Written in Perl, making it easily portable and usable in various environments
  • Automatic tests using GitHub Actions to ensure reliability and correctness (using Shellcheck as unit test framework)

Skills

Programming
Working regularly with Python, Java, and Git; familiar with PHP, Javascript, SQL, HTML/CSS and scripting languages (Bash, Perl)
Languages
Italian (native), English (B2-C1)
Continuous Integration / Continuous Deployment
Working regularly with CI/CD tools and practices, automated testing (e.g. JUnit, Pytest), and deployment pipelines (Jenkins, GitHub Actions)
Generative AI
Familiar with AI tools/agents (e.g. GitHub Copilot, Claude Code, ChatGPT) for brainstorming, code generation, debugging, and documentation support

Certifications

Cisco CCNA Routing & Switching 1

Jan 2016

Cambridge B1 Preliminary (PET)

May 2015

Education

ITT "Enrico Fermi", Information Technology

Grade: 70/100

2015 – 2017Frascati, Italy

ITIS "Galileo Galilei", Information Technology

2012 – 2015Rome, Italy

DS Tech srl, Java Fullstack developer crash course

Intensive course on Java programming, mobile development with Ionic and front-end technologies (HTML, CSS, TypeScript, AngularJS)

Oct 2017 – Dec 2017Rome, Italy