ic.
ES/EN
OPEN TO JUNIOR OPPORTUNITIES

Carlos Ignacio Cardozo Peragallo

I build software.
I connect systems.

Java and Python, from interface to data. I build interactive maps, complete features and integrations for a municipal system in production.

Paraná, Argentina

Remote · Paraná / Santa Fe

Java · Python · PostgreSQL

Java / Python / PostgreSQL / Full Stack / Integrations

01 / SELECTED WORK

Solving real problems.

Three professional SIGAP case studies: geographic management with Java, data extraction and Python automation.

01Full-stack development

Interactive public-lighting map

Geographic browsing and management within SIGAP, using data previously accessed through QGIS.

  • Java
  • JSP / JavaScript
  • OpenLayers
  • PostGIS
  1. OpenLayers
  2. Java / GeoJSON
  3. PostGIS
Explore the case

The problem

Bring geographic browsing and editing of lighting assets, supply points, control units and neighborhood boundaries into the municipal application.

My contribution

I developed the OpenLayers view and its connection to the Java backend and PostgreSQL/PostGIS. I implemented layers, search, spatial selection, individual and bulk editing, and integration with work-order forms.

Technical decision

Reuse existing geographic information and connect the interface to servlets through AJAX and GeoJSON. Query the visible map area and transform coordinates between the database and web map.

Status and scope

Implemented and integrated into SIGAP’s main branch. Users can select lighting assets by rectangle, polygon or neighborhood and pass the selection to work-order forms. The scope covers the tasks incorporated into SIGAP, rather than every QGIS capability.

Professional case study · Internal source code and data are not public.

02In production

SIGAP → RCC

From invoice data to a verified record in a municipal portal.

  • Python
  • Playwright
  • Java
  • PostgreSQL
  1. Validate data
  2. Check and submit
  3. Verify record
Explore the case

The problem

Moving invoice data from SIGAP to another web system involved working across two applications.

My contribution

I developed and deployed the automation, its Java and PostgreSQL integration, and the operating view in SIGAP. I implemented validation, existing-record checks and post-submission verification.

Technical decision

Use browser automation for a defined workflow. Check the portal before retrying uncertain operations, and update invoice status after verifying the record.

Status and scope

Deployed to production. Includes automated component tests, a Windows installer and local credential protection with DPAPI. Time savings and usage volume have not yet been quantified.

Professional case study · Internal source code and data are not public.

03Batches processed

SIGAP Facturas AI

Invoice data extraction with a local multimodal model, integrated into the existing application.

  • Python
  • Ollama
  • Multimodal AI
  • Java
  1. PDF / image
  2. Extract and validate
  3. Integrate with SIGAP
Explore the case

The problem

Extract structured fields from scanned invoices and compare them with existing system data.

My contribution

I developed the Python extraction workflow with Ollama and its Java integration, including the interface and interactions used to operate it within SIGAP.

Technical decision

Separate AI extraction, data validation and integration. Subsequent submission to the RCC portal uses conventional automation.

Status and scope

Completed workflow used with invoice batches across four tariffs. Accuracy and time savings remain to be measured.

Professional case study · Internal source code and data are not public.

Technical exploration.

Individual academic projects with public source code to explore.

04Academic · Individual

Movie reviews

A Java application with a REST API, Vaadin interface and MongoDB persistence.

  • Java 21
  • Spring Boot
  • MongoDB
  • Redis
  • Vaadin
  1. UI / REST
  2. Services
  3. MongoDB / Redis
Explore the case

The problem

Model and manage reviews through a web application.

My contribution

I implemented CRUD operations, endpoints, services, repositories and the interface as an individual project.

Technical decision

Separate responsibilities into layers and explore caching with Spring Cache and Redis.

Status and scope

Individual academic project with public source. Documentation includes setup, scope and remaining verification.

View source and documentation ↗
05Academic · Individual

Gym Routine Manager

Routine and exercise management with a React interface connected to a Python API.

  • FastAPI
  • React
  • PostgreSQL
  • SQLModel
  1. React
  2. FastAPI
  3. PostgreSQL
Explore the case

The problem

Create and organize routines and exercises through a web interface.

My contribution

I developed the frontend and backend: forms, search, CRUD operations and SQLModel persistence.

Technical decision

Separate the interface and API, with data models and relational persistence.

Status and scope

Individual academic project with public frontend and API source. The README covers local setup and pending configuration fixes; there is no deployed demo.

View source and documentation ↗

02 / EXPERIENCE & EDUCATION

From problem
to implementation.

I want to understand how people use a system and turn their needs into software they can work with.

JUNE 2025 — PRESENT

Junior Software Developer

Municipality of Paraná · SIGAP

Full-stack development with Java 8, JSP/Servlets, JavaScript, OpenLayers, Hibernate/JPA and PostgreSQL/PostGIS. I also developed statistics on lighting assets, electricity use and invoice spending. I gather requirements directly from users, analyze the domain and define solutions alongside another developer. I organize tasks in Jira and validate changes through demonstrations and feedback.

Education

University technical program in programming
UTN Paraná · 2024–present
17 of 18 courses passed. Final project pending.

Diploma program in Artificial Intelligence
UTN Buenos Aires · 2026
157 hours · Outstanding

Spanish native · English B2
Cambridge First Certificate · 2021

03 / RÉSUMÉ

The right focus for each role.

The same experience, tailored to two paths. One-page PDFs in English and Spanish.

Java Backend / Full Stack

Java · JSP · PostgreSQL · Spring Boot

Español ↓English ↓

Python & integrations

Python · Playwright · APIs · PostgreSQL

Español ↓English ↓

04 / LET’S TALK

Let’s build something.

I’m looking for a team where I can contribute, learn and keep building software. I prioritize remote roles and also consider Paraná and Santa Fe, Argentina.