Fabio De Lorenzo

Fabio De Lorenzo

Senior Embedded Engineer

Location
Orange County, California Area
Industry
Computer Software

Overview

Current
Past
Education
  • Università degli Studi di Roma 'La Sapienza'
  • Stanford University - CS221: Artificial Intelligence

Summary

I have a broad experience from FPGA digital design to user interface and web applications.
My main experience is on Linux Kernel / Drivers and software application (C/C++ , python , bash) for embedded systems.

For the last 5 years I've been working for a semiconductor manufacturer (STMicroelectronics) supporting the driver development and application integration for the Set-Top-Box industry and, lately, as firmware engineer.

I constantly work on my own projects like: Linux multimedia, Android apps, php
Very passionate on technology, I've always enjoyed to work on innovative and creative projects.
I am motivated by challenges that require creativity and skills to innovate.

Specialties

Linux kernel/driver development, php, set-top-box, problem solving, innovation, software development

Experience

Senior Firmware Engineer

STMicroelectronics

Public Company; 10,001+ employees; WDC; Computer Hardware industry

May 2010 . Present (1 year 11 months)

Application development and support for HDD motor controller ASIC.
FPGA development with Verilog
firmware ARM development for Hard Disk Spindle
Visual Basic application development.
Scripting development with Matlab, Python and Windex

Software Design Staff Engr I

STMicroelectronics Inc.

Public Company; 10,001+ employees; STM; Semiconductors industry

October 2007 . April 2010 (2 years 7 months)

San Jose - California - USA
-----------------------------------
Common Device Interface (CDI) core team
Contributes to the software product definition requirements, particularly in terms of technical solutions.
Provides product technical support during the implementation stage.
Integration and developing of new software modules (Linux Kernel Driver) mainly focused on security, demux and front panel.
Developed ST SPI driver.

Linux Embedded developer

STMicroelectronics

Public Company; 10,001+ employees; STM; Semiconductors industry

June 2006 . October 2007 (1 year 5 months)

Bristol - United Kingdom
---------------------------------
Writing and porting of code in "C", software integration, system debugging and running acceptance tests on both reference boards and customer end platforms.
Development driver in the kernel space as well as user space software.
Development of customer facing documentation and internal documentation for use by other developers within ST.
Architecture SW/HW: linux, OS20/OS21. Board: mb411, co.co-Ref
Acquired knowledge on: JTAG,kdbg kernel debugger, CDI/STapi,DVB DSS A3, SmartCard CWP EMS, ClearCase, ST7100/ST7109

Embedded developer

Ericsson (Dimaco Systems)

April 2005 . June 2006 (1 year 3 months)

Linux embedded software developer
Developed Energy Metering embedded device for Acea using COSEM (Companion Standard for Energy Metering)

linux developer

radiomarelli spa

August 2003 . May 2005 (1 year 10 months)

stb middleware developer

Projects

  • Fifteen puzzle

    • December 2011 to Present

    I developed a Neural Network using the A* algorithm to solve the Fifteen puzzle.
    In the first stage, I developed the game on the Android platform.
    After that, I developed a software to find the best solution for a given puzzle.

    I'm currently working on a image recognition algorithm to take a picture of the puzzle board and, based on the configuration, find the best solution

  • The jukebox project

    • July 2011 to October 2011

    Recently, I visited a friend who was using the Apple Airport.
    That piece of plastic is very impressive. You can wireless stream your iTunes music and control it directly from your iphone.
    Really nice idea and works like a charm ! But, you need your music indexed into the iTunes library .. I hate iTunes !

    I hate having to deal with playlist.
    Why I can.t simply drop my albums into a folder and...more

Education

Stanford University

Stanford University . CS221: Artificial Intelligence

2011 . 2012

CS221 is the introductory course into the field of Artificial Intelligence at Stanford University. It covers basic elements of AI, such as knowledge representation, inference, machine learning, planning and game playing, information retrieval, computer vision, and robotics.

Activities and Societies: Artificial Intelligence, taught by Sebastian Thrun and Peter Norvig.

Linux Kernel Hacking - University of Rome 2

University of Rome 2 - Linux Kernel Hacking

2006 . 2007

The ambitious goal of this Kernel hacking course is to describe in a coherent way all you should know to become a reasonable kernel hacker.

Universitàegli Studi di Roma 'La Sapienza'

Master Degree, Electronic engineering

1994 . 2000

     


[My notes]

(log in with username my gmail email and password my cell phone number (no international prefix)

View Fabio De Lorenzo's profile on LinkedIn






Useful books and articles I found on the net:

gapil.pdf

LinuxBIOS.pdf

Addison_Wesley-Linux_Kernel_Internals_2nd ED.pdf

Linux_Driver_Writing.pdf

JBoss-startguide.pdf

J2EETutorial.pdf

C_Reference_Card-ANSI.pdf

Understanding_the_Linux_Virtual_Memory_Manager_2004.pdf

debugging_linux_applications.pdf

gdb-refcard-letter.pdf

gdb-refcard-a4.pdf

OReilly-Enterprise_JavaBeans_3rd_Edition_JBoss_3.2_Workbook.pdf

Linux_Programming_3rd.pdf

VIM_Quick_Reference_Card.pdf

VI_Reference_Card.pdf

VI_Quick_Reference.pdf

Digital_Video_and_Hdtv_Algorithms_and_Interfaces.pdf

RS485_Auto_Direction.pdf

DMMv212.pdf

GreatWatchdogs-v1.2.pdf

gdb-refcard-fullpage.pdf

OReilly-Managing_Projects_with_GNU_make-2004-3Ed.chm

make.pdf

vimar.pdf

ST7537-9324.pdf


Some Freeware programs for Micro$oft really useful:

putty.exe

ibiza_rmm.jpg

winscp380.exe

module_analog_polling.tgz