I am an...
Electronic engineer, embedded and real-time software analyst, developer and integrator in high-availability, fault-tolerant systems, analog and digital electronic circuits designer. Experienced in social volunteering.
Working experience
Embedded software engineerBetween
March 2019 until now - Pinto (Madrid) |
Download my résumé:
También en español:
|
- Embedded software analysis and development for train-ground radio communication, audio/video traveller’s information systems, video surveillance with crashworthy recording, diagnostic supervision.
Languages: C and C++ on Eclipse for ARM Cortex and Intel microcontrollers with Linux OS.
Languages: C and C++ on Eclipse for ARM Cortex and Intel microcontrollers with Linux OS.
Embedded software engineer
Biocryptology
September 2017 to February 2019 (one year and a half) - Madrid
- Event-driven software analysis, design and development for a biometric remote identification IoT device. Responsible for the implementation of a bootloader, a flash file system, data security, integrity, compression and encryption, linker scripts for memory mappings, system clock configuration and distribution, battery energy saving etc.
Languages: C on Eclipse for ARM Cortex M4 microcontrollers, ARM/thumb assembly.
September 2017 to February 2019 (one year and a half) - Madrid
- Event-driven software analysis, design and development for a biometric remote identification IoT device. Responsible for the implementation of a bootloader, a flash file system, data security, integrity, compression and encryption, linker scripts for memory mappings, system clock configuration and distribution, battery energy saving etc.
Languages: C on Eclipse for ARM Cortex M4 microcontrollers, ARM/thumb assembly.
Embedded software engineer
Indra (consultant from Novanotio)
June 2017 - September 2017 (3 months) - San Fernando de Henares, Aranjuez (Madrid)
- Embedded software design, development, lab prototype integration and testing for public transport ticket vending machines. The rechargeable tickets are stored in contactless smart cards or mobile phones. When idle, the large machine screens can be used as video advertisement media.
Languages: C++ on Visual Studio for Windows 7 Embedded, XML, HTML.
June 2017 - September 2017 (3 months) - San Fernando de Henares, Aranjuez (Madrid)
- Embedded software design, development, lab prototype integration and testing for public transport ticket vending machines. The rechargeable tickets are stored in contactless smart cards or mobile phones. When idle, the large machine screens can be used as video advertisement media.
Languages: C++ on Visual Studio for Windows 7 Embedded, XML, HTML.
Information technology analyst
Axpe Consulting
November 2016 - June 2017 (7 months) - Madrid
- Analysis and implementation of interfaces for a car insurance product which monitors vehicle's position and travelled distances, and can automatically reports crashes.
Languages: Pro*C, Oracle SQL and Java on Unix HP-UX servers.
November 2016 - June 2017 (7 months) - Madrid
- Analysis and implementation of interfaces for a car insurance product which monitors vehicle's position and travelled distances, and can automatically reports crashes.
Languages: Pro*C, Oracle SQL and Java on Unix HP-UX servers.
Embedded software engineer
Self-employed
January 2013 - November 2016 (3 years 11 months) - Aranjuez (Madrid)
Feasibility studies and experiments for own and other companies products. Among them:
- Real-time transmission of racing vehicles GNSS position, diagnostic information, automatically detected crashes and other alerts.
- Market study on assistive products and software for disabled people.
- Voice recognition Android development for the control of a smartphone and household appliances.
- Point-to-multipoint protocol in ISM radio band for real-time telemetry.
Languages: Java on Android Studio for Android devices, C on Keil μVision for ARM Cortex M0 microcontrollers.
January 2013 - November 2016 (3 years 11 months) - Aranjuez (Madrid)
Feasibility studies and experiments for own and other companies products. Among them:
- Real-time transmission of racing vehicles GNSS position, diagnostic information, automatically detected crashes and other alerts.
- Market study on assistive products and software for disabled people.
- Voice recognition Android development for the control of a smartphone and household appliances.
- Point-to-multipoint protocol in ISM radio band for real-time telemetry.
Languages: Java on Android Studio for Android devices, C on Keil μVision for ARM Cortex M0 microcontrollers.
Software analysis, design and development engineer
Orga Systems, Spanish branch office
November 2007 to November 2012 (5 years 1 month) - Madrid, Rome, Santiago de Chile
- Software development, maintenance, porting and customizations for mobile telephony real-time classic and convergent billing systems.
- Development and automated testing of web interfaces for tariffs and promotions configuration.
- Development, maintenance and customizations of a web-based selling system for prepaid accounts recharge.
Languages: Java and C on Eclipse for Unix HP-UX and Solaris servers, Bash/Ksh scripting.
November 2007 to November 2012 (5 years 1 month) - Madrid, Rome, Santiago de Chile
- Software development, maintenance, porting and customizations for mobile telephony real-time classic and convergent billing systems.
- Development and automated testing of web interfaces for tariffs and promotions configuration.
- Development, maintenance and customizations of a web-based selling system for prepaid accounts recharge.
Languages: Java and C on Eclipse for Unix HP-UX and Solaris servers, Bash/Ksh scripting.
Software analysis, design, development and integration engineer
Alcatel-Lucent Italy - Wireless Transmission Division
2003 – November 2007 (4 years) - Vimercate (Italy), Chengdu (China)
For Alcatel-Lucent 9600 LSY (SDH long-haul) digital microwave links, I did:
- re-structuring, extension and speed optimization of a hardware abstraction layer language interpreter.
For Alcatel-Lucent 9400 AWY (PDH short-haul) digital microwave links, I did:
- hardware start-up and operating configuration, including customizations;
- real-time alarm detection, filtering and reporting.
Languages: C on Solaris Unix for PowerQUICC based embedded systems, Bash/Ksh scripting.
2003 – November 2007 (4 years) - Vimercate (Italy), Chengdu (China)
For Alcatel-Lucent 9600 LSY (SDH long-haul) digital microwave links, I did:
- re-structuring, extension and speed optimization of a hardware abstraction layer language interpreter.
For Alcatel-Lucent 9400 AWY (PDH short-haul) digital microwave links, I did:
- hardware start-up and operating configuration, including customizations;
- real-time alarm detection, filtering and reporting.
Languages: C on Solaris Unix for PowerQUICC based embedded systems, Bash/Ksh scripting.
Software analysis, design, development and integration engineer
Alcatel Spain - Access Networks Division
November 2000 – 2002 (2 years) - Madrid
For Alcatel 1540 Litespan Multi-Service Access Node I did:
- requirements analysis, brainstorming meetings, design documents writing and review;
- implementation of new requirements with in-system and load testing;
- configuration and handling of amplification, echo suppression, over-current protection in subscriber line boards;
- ring power management and time-critical programmable cadences generation in subscriber line boards firmware;
- integration of new hardware boards;
- ETSI V5.2 protocol handling customizations;
- PSTN interface Z customizations.
Alcatel 1540 Litespan is a Multi-Service Access Node (MSAN) with automatic failover/fallback capability and emergency stand-alone mode.
It delivers POTS, ISDN, xDSL and leased line services to up to 3600 subscribers. It can be connected (with coaxial or fiber optic cables) through PDH, SDH or Ethernet interfaces to legacy, ATM or IP networks.
Languages: C++ and C on Solaris Unix for PowerQUICC embedded systems, 6502 Assembly for proprietary ASICs.
November 2000 – 2002 (2 years) - Madrid
For Alcatel 1540 Litespan Multi-Service Access Node I did:
- requirements analysis, brainstorming meetings, design documents writing and review;
- implementation of new requirements with in-system and load testing;
- configuration and handling of amplification, echo suppression, over-current protection in subscriber line boards;
- ring power management and time-critical programmable cadences generation in subscriber line boards firmware;
- integration of new hardware boards;
- ETSI V5.2 protocol handling customizations;
- PSTN interface Z customizations.
Alcatel 1540 Litespan is a Multi-Service Access Node (MSAN) with automatic failover/fallback capability and emergency stand-alone mode.
It delivers POTS, ISDN, xDSL and leased line services to up to 3600 subscribers. It can be connected (with coaxial or fiber optic cables) through PDH, SDH or Ethernet interfaces to legacy, ATM or IP networks.
Languages: C++ and C on Solaris Unix for PowerQUICC embedded systems, 6502 Assembly for proprietary ASICs.
Software analysis, design, development and integration engineer
Alcatel Italy/Belgium/Spain/Germany - Switching and Routing Division
April 1993 – October 2000 (7 years 7 months) - Milan, Vimercate, Antwerp, Madrid, Stuttgart
For Alcatel 1000 S12 Digital Switching System I did:
- requirements analysis, brainstorming meetings, design documents writing and review, mainly for call handling and supplementary services (CLIP, Call Waiting, CCBS, etc.) at subscriber’s line device handler level, in local exchange and remote concentrators;
- implementation of new requirements (coding, lab unit testing and load testing);
- porting and retrofitting;
- lab integration of software and new hardware;
- speed optimizations;
- bug fixing;
- remote field support.
I spent out of Italy (in Belgium, Spain and Germany) about three years during this period.
Alcatel 1000 S12 is a digital telephone switching system, each node connecting up to 120,000 POTS/ISDN/PABX/trunk equivalent lines, with distributed control and automatic failover/fallback capability. Subscribers can be remoted on concentrators, each connecting from 500 to 8000 lines and capable of intra-call and emergency stand-alone mode.
Languages: CHILL on Unix Solaris and IBM TSO for 80x86 embedded systems, and 80x86 Assembly.
April 1993 – October 2000 (7 years 7 months) - Milan, Vimercate, Antwerp, Madrid, Stuttgart
For Alcatel 1000 S12 Digital Switching System I did:
- requirements analysis, brainstorming meetings, design documents writing and review, mainly for call handling and supplementary services (CLIP, Call Waiting, CCBS, etc.) at subscriber’s line device handler level, in local exchange and remote concentrators;
- implementation of new requirements (coding, lab unit testing and load testing);
- porting and retrofitting;
- lab integration of software and new hardware;
- speed optimizations;
- bug fixing;
- remote field support.
I spent out of Italy (in Belgium, Spain and Germany) about three years during this period.
Alcatel 1000 S12 is a digital telephone switching system, each node connecting up to 120,000 POTS/ISDN/PABX/trunk equivalent lines, with distributed control and automatic failover/fallback capability. Subscribers can be remoted on concentrators, each connecting from 500 to 8000 lines and capable of intra-call and emergency stand-alone mode.
Languages: CHILL on Unix Solaris and IBM TSO for 80x86 embedded systems, and 80x86 Assembly.
Freelance technical writer
J.soft (Gruppo Editoriale Jackson), Tecniche Nuove, Centro Ricerche Elettroniche, Futura Group
Since the beginning of my University studies I made programs and pieces of hardware, wrote the related articles and translated from English to Italian several Computer Science and Electronics articles for the magazines:
- SuperSinc (publisher: J.Soft - Gruppo Editoriale Jackson),
- Micro&Soft (publisher: Tecniche Nuove),
- Elettronica Integrata (publisher: Tecniche Nuove),
- Nuova Elettronica (publisher: Centro Ricerche Elettroniche),
- Elettronica In (publisher: Futura Group).
You can find some of these articles in the Electronics and Computer science sections of this web site.
Languages: Atmel AVR Assembly, Zilog Z80 Assembly, Basic.
Since the beginning of my University studies I made programs and pieces of hardware, wrote the related articles and translated from English to Italian several Computer Science and Electronics articles for the magazines:
- SuperSinc (publisher: J.Soft - Gruppo Editoriale Jackson),
- Micro&Soft (publisher: Tecniche Nuove),
- Elettronica Integrata (publisher: Tecniche Nuove),
- Nuova Elettronica (publisher: Centro Ricerche Elettroniche),
- Elettronica In (publisher: Futura Group).
You can find some of these articles in the Electronics and Computer science sections of this web site.
Languages: Atmel AVR Assembly, Zilog Z80 Assembly, Basic.
Volunteering experiences
Telecare network technical coordinator
Coordinamento Promozione Solidarietà
1983 – 1996 (13 years) - Bollate
Technical coordination, installation and maintenance of a telecare network for elder and disabled people.
- Relations with co-operating ambulances voluntary associations.
- Handling of technological network update with market survey on 25 companies and entities; various terminal devices tests to choose the one that best fitted our needs.
- Devices improvements proposals to companies who requested me them.
- Electronic design and construction of:
- two alarm reception consoles to ease caller identification, hands-free conversation and remote door opening from the alarm reception center;
- radio controlled door lock to allow the user unlock the door without standing up and moving;
- battery and accumulator testers;
- automatic battery chargers.
- Trials and arrangements to allow automatic centralized collection of diagnostic alarms.
- Technical manuals and forms redaction.
- Installers training and know-how transfer to allow the start-up of new telecare networks in nearby towns.
- Redaction of annual reports for city council and regional government.
A service description (in Italian, with images) from my blog is available.
Language: Microsoft Quick C.
1983 – 1996 (13 years) - Bollate
Technical coordination, installation and maintenance of a telecare network for elder and disabled people.
- Relations with co-operating ambulances voluntary associations.
- Handling of technological network update with market survey on 25 companies and entities; various terminal devices tests to choose the one that best fitted our needs.
- Devices improvements proposals to companies who requested me them.
- Electronic design and construction of:
- two alarm reception consoles to ease caller identification, hands-free conversation and remote door opening from the alarm reception center;
- radio controlled door lock to allow the user unlock the door without standing up and moving;
- battery and accumulator testers;
- automatic battery chargers.
- Trials and arrangements to allow automatic centralized collection of diagnostic alarms.
- Technical manuals and forms redaction.
- Installers training and know-how transfer to allow the start-up of new telecare networks in nearby towns.
- Redaction of annual reports for city council and regional government.
A service description (in Italian, with images) from my blog is available.
Language: Microsoft Quick C.
Home physical therapies coordinator, group treasurer
Gruppo Volontari - Anffas
1984 – 1991 (7 years) - Bollate
- Home physical therapy and coordination of its volunteers, swimming pool hydrotherapy, excursions, recitals and leisure activities for disabled children and youths.
- Promotion of our activities and search for new volunteers.
- Renovation of loaned rooms for the first workshop of a social cooperative society for the job placement of disabled youths, founded by some volunteers of the group.
1984 – 1991 (7 years) - Bollate
- Home physical therapy and coordination of its volunteers, swimming pool hydrotherapy, excursions, recitals and leisure activities for disabled children and youths.
- Promotion of our activities and search for new volunteers.
- Renovation of loaned rooms for the first workshop of a social cooperative society for the job placement of disabled youths, founded by some volunteers of the group.
Work camps volunteer
Operazione Mato Grosso
1988 – 1995 (7 years)
Participation in several work camps in Italy to raise funds for social, educational and sanitary projects in Bolivia, Brazil, Ecuador and Peru:
mountain huts construction and running, fire break paths maintenance and environment conservation, fruit harvesting, catering, painting and other maintenance works, wood and leather handicraft, collection for recycling of paper, scrap metals, glass, plastics and clothes.
1988 – 1995 (7 years)
Participation in several work camps in Italy to raise funds for social, educational and sanitary projects in Bolivia, Brazil, Ecuador and Peru:
mountain huts construction and running, fire break paths maintenance and environment conservation, fruit harvesting, catering, painting and other maintenance works, wood and leather handicraft, collection for recycling of paper, scrap metals, glass, plastics and clothes.
Military service objector in alternative civilian service
Caritas Ambrosiana
1990 – 1991 (1 year)
Volunteering promotion and coordination, various support activities for disabled, mentally ill, ex-drug addicted youths, socially problematic adolescents, transports for therapies of elder and disabled, meals preparation and distribution for homeless people, etc.
1990 – 1991 (1 year)
Volunteering promotion and coordination, various support activities for disabled, mentally ill, ex-drug addicted youths, socially problematic adolescents, transports for therapies of elder and disabled, meals preparation and distribution for homeless people, etc.
Blood donor
Avis - Amici dell'ospedale di Bollate
1997 – Present (16 years)
1997 – Present (16 years)
Skills
Programming languages: | C, C++, Java, Javascript, Bash/Ksh scripting, CHILL, Pascal, Basic |
Assembly languages: | ARM/thumb, AVR, Intel x86, Zilog Z80, MOS 6502/6510 |
Other computer languages: | XML, HTML, CSS, Json, YAML, SQL |
Frameworks: | QM (UML hierarchical state machines for event-driven embedded systems) |
Editors/IDEs: | Kinetis Design Studio, Atmel AVR Studio, Eclipse, CRiSP, vi and others |
Simulators/Monitors/Debuggers: | GDB, MPTMON (Multi-Processor Test Monitor, Alcatel proprietary tool), 6502 Simulator |
Automatic tests: | Selenium |
Version control: | Subversion, ClearCase, SNiFF+, Perforce |
Use of operating systems: | UNIX (Solaris/Tru64/HP-UX), Ubuntu Linux, Android, Windows, MS-DOS, VAX-VMS, IBM TSO |
Office suites: | Microsoft Office, OpenOffice, others |
Image editors and compressors: | Serif PhotoPlus, xat.com Image Optimizer, others |
Languages
English:
Spanish: Italian: |
full professional proficiency (Advanced diploma from Marian College, Dublin, Ireland, obtained in 1982)
bilingual (Advanced DELE obtained in 2001) native |
Professional courses
CFTIC Getafe
Centro di Formazione Alcatel Italia
2003 - 2006
- Radio propagation basics (8 hours)
- Free Space Optics links dimensioning criteria (8 hours)
- Fixed wireless products evolution (4 hours)
- Radio links quality dimensioning criteria (4 hours)
- Java: technology overview and fundamental APIs (8 hours)
- Java: distributed computing (8 hours)
- Java programming (40 hours)
- Radio propagation basics (8 hours)
- Free Space Optics links dimensioning criteria (8 hours)
- Fixed wireless products evolution (4 hours)
- Radio links quality dimensioning criteria (4 hours)
- Java: technology overview and fundamental APIs (8 hours)
- Java: distributed computing (8 hours)
- Java programming (40 hours)
Alcatel University Madrid
2001 - 2002
- IP Technologies (20 hours)
- ATM Technology (15 hours)
- Access Techniques and products (20 hours)
- ADSL Technology (5 hours)
- IPv6 and the future of Internet (on-line course)
- UML object oriented analysis and design (25 hours)
- IP Technologies (20 hours)
- ATM Technology (15 hours)
- Access Techniques and products (20 hours)
- ADSL Technology (5 hours)
- IPv6 and the future of Internet (on-line course)
- UML object oriented analysis and design (25 hours)
Education
Politecnico di Milano
November 1984 - February 1993 (5 years regular + 3 years extended term)
Graduate in Electronic Engineering with Computer science specialization
Career final project: application of Software Engineering techniques for the development of an expert system for the resolution and lively simulation of physics problems, for didactic purposes in high school.
- Enabled to exert Engineer’s profession in Italy (1993)
- Enabled to exert Telecommunications Engineer profession in Spain (2003)
Graduate in Electronic Engineering with Computer science specialization
Career final project: application of Software Engineering techniques for the development of an expert system for the resolution and lively simulation of physics problems, for didactic purposes in high school.
- Enabled to exert Engineer’s profession in Italy (1993)
- Enabled to exert Telecommunications Engineer profession in Spain (2003)
Sports
- Mountain excursions in Italy, Switzerland, Spain, Andorra (Alps, Appennines, Sierra de Madrid, Gredos, Pyrenees).
- Trekking. Walking the Way of St. James from Roncesvalles to Santiago de Compostela (750 km, 2001-2002) and from Vilalba (Lugo) to Santiago (120 km, 2003).
- Competition swimming in 1980 - 1982 (Bollate Sub, Centro Nuoto Bollate). Participation in several contests.
- Trekking. Walking the Way of St. James from Roncesvalles to Santiago de Compostela (750 km, 2001-2002) and from Vilalba (Lugo) to Santiago (120 km, 2003).
- Competition swimming in 1980 - 1982 (Bollate Sub, Centro Nuoto Bollate). Participation in several contests.