Leandro Matías Lucarella
========================
-:E-Mail: luca@llucax.com
-:Web: https://llucax.com/
+:Contact: luca@llucax.com | https://llucax.com/
:LinkedIn: https://www.linkedin.com/in/llucax/
+:GitHub: llucax_ / leandro-lucarella-sociomantic_
:Location: Berlin, Germany
:Nationality: Argentine / Italian
:Birth: 1979-02-15
:Updated: |date|
-:GitHub User: llucax_ / leandro-lucarella-sociomantic_
.. |date| date:: %Y-%m
.. _llucax: https://github.com/llucax
Profile
=======
-Versatile developer with focus system and network programming, library
-development and development tools in both low-level system programming
+Versatile developer with focus on scalable distributed systems programming,
+library development and development tools in both low-level system programming
languages and scripting high-level languages.
-Quality-oriented technical lead. Aware of stakeholder's and business' needs.
+Quality-oriented technical lead but aware of stakeholder's and business' needs.
Able to balance good practices with business requirements; focus on keeping
systems as simple as possible, but as complex as needed.
Proactive self-taught, able to work on own motivation or as part of both
-small or big teams, specially using FLOSS_ (Free *Libre* Open Source
-Software) development methodologies and tools.
-
-.. _FLOSS: https://en.wikipedia.org/wiki/Free_and_open-source_software
+small or big teams, specially using Open Source development methodologies and
+tools.
Skills
======
-- Programming languages: deep practical knowledge of D, Python,
- Bash, Make; C/C++ too, but it's a bit rusty. Basic knowledge but high
- interest in Go and Rust.
-- Concurrent and network programming, including POSIX threads, BSD
- sockets, TCP/IP and TIPC_ experience.
-- Test automation (touching several systems, including Jenkins_ and Travis_,
- and using Docker_ for isolation and reproduceability).
-- Multi-paradigm design and programming.
-- Shell scripting and Linux system administration and performance tuning
- (focus on Debian_ based distros).
-- Training people on programming and technical topics.
-- Open source projects management.
-- Releases management.
-
-.. _TIPC: http://tipc.sourceforge.net/
+- Languages: Python, D, C/C++, Dart, Rust, Go (interested).
+- Concurrent and network programming, high-performance distributed systems,
+ micro-services programming and design/architecture.
+- Build and test automation (`GitHub Actions`_, `GitLab CI`_, Jenkins_,
+ Travis_).
+- Shell scripting and Linux system administration.
+- Training and mentoring people (programming and technical topics).
+- Technical projects and release management (focus on Open Source workflows).
+
.. _Jenkins: https://jenkins.io/
.. _Travis: https://travis-ci.org/
+.. _GitLab CI: https://docs.gitlab.com/ee/ci/
+.. _GitHub Actions: https://github.com/features/actions
.. _Docker: https://www.docker.com/
.. _Debian: https://www.debian.org/
Achievements
============
-- Founding of two Linux user groups, LUGFI_ (2002) and LUGMEN_ (1998),
- making several conferences.
+- Founding of two Linux user groups, LUGFI_ (2002) and LUGMEN_ (1998).
- Publication of several articles on the web (1999-2005). Two of them were
published on Linux Free Magazine, year 1, number 1 (2003).
-- Several collaborations to popular FLOSS_ projects including (but not limited
- to): Linux_ (2001, C, bugfix in ``bttv`` module), xmi2code_ (2003, C++, PHP
- support, features and maintainership), dia2code_ (2003, C, PHP support),
- SQLObject_ (2006-2007, Python, features and bugfixes), TurboGears_ (2006,
- Python, features and bugfixes), Gnomad2_ (2005, C, GUI improvements), DMD_
- (2008-, C++/D, improvements to the compiler and runtime).
-
-- Creation of several small/medium sized FLOSS_ projects: Etherled_ (2005,
- C/ASM, remote controlled, programmable stroboscopic image projector device
- using a 8051-family micro-controller, including an ISA NE2000 compatible
- network adapter driver and a small, custom IP/UDP stack), Sercom_ (2004-2009,
- Python/SQL, automated compilation and testing system for programs written in
- C/C++, including a security-aware backend process to compile and test in a
- sandbox), Pymin_ (2007, Python, Linux_ router administration tool based on a
- daemon server with client/server infrastructure), eventxx_ (2007, C++, thin
- C++ wrapper for libevent_), ev.d_ (2008, D, thin D wrapper for libev_),
- mutest_ (2008, C/C++/Python, simple micro unit testing framework for C and
- C++), git-hub_ (2013-, Python, Git command line interface to GitHub_), makd_
- (2016-, Shell/Python/Make, Make library/framework to build D projects),
- beaver_ (2017-, Shell, shared Travis scripts to be used to reduce CI
- boilerplate), Management, contribution and.or reviewing of several other
- projects of the sociomantic-tsunami_ organization.
+- Several collaborations to popular open source projects including (but not
+ limited to): Linux_ (2001, C, ``bttv`` module), xmi2code_ (2003, C++),
+ SQLObject_ (2006-2007, Python), TurboGears_ (2006, Python), Gnomad2_ (2005,
+ C), DMD_ (2008-2019, C++/D), sociomantic-tsunami_ Open source programme
+ (2013-, mostly D).
+
+- Creation of open source projects: Etherled_ (2005, C/ASM, 8051
+ micro-controller), Sercom_ (2004-2009, Python/SQL), Pymin_ (2007, Python),
+ eventxx_ (2007, C++), ev.d_ (2008, D), mutest_ (2008, C/C++/Python), git-hub_
+ (2013-, Python), makd_ (2016-2019, Shell/Python/Make), beaver_ (2017-2019,
+ Shell),
+ Lunofono_ (2020-, Flutter_), noclick.me_ (2021-, Rust_, Flutter_).
- Presented a talk (`Concurrent Garbage Collection for D`_) at DConf13_ and
gave a Keynote_ at DConf16_.
.. _`Concurrent Garbage Collection for D`: http://dconf.org/2013/talks/lucarella.html
.. _DConf16: http://dconf.org/2016/
.. _Keynote: http://dconf.org/2016/talks/lucarella.html
+.. _Flutter: https://flutter.dev/
Experience
==========
+Hiatus (2020-):
+ Taking some time off after more than 20 years. Experimenting with personal
+ projects and learning stuff that I wasn't able to at work. Learned Rust and
+ Dart/Flutter_ by developing two projects: noclick.me_ (link expansion service,
+ Rust_ + Flutter_) and Lunofono_ (media player app for kids, Flutter_).
+
+`QuoScient GmbH`_ [Software Engineer] (2019-2020):
+ Doing Python development on QuoLab, a distributed security platform.
+
`dunnhumby Germany GmbH`_ [Lead Engineer - Technical Lead] (2018-2019):
Continued Technical Lead role after acquisition of Sociomantic adding
management of integration topics. Moving from GitHub_ to GitLab_.
`Sociomantic Labs GmbH`_ [Technical Development Lead] (2013-2018):
- Technical support for a team of ~30 (grown from ~5). Development of
- tools for developers. Managing of development infrastructure (testing,
- Debian_ repositories, Docker_ images, etc.) and setting processes for
- development, testing, releasing and deployment for a team of ~60 (grown from
- ~10). Managing the open sourcing programme (sociomantic-tsunami_). Migration
- from D1 to D2.
+ Technical leading for the backend team of (grown from ~5 to ~30 distributed
+ in 5 sub-teams). Managing of development infrastructure (testing, CI,
+ Debian_ repos, Docker_ images, etc.). Design and architecture. Setting
+ processes for development, testing, releasing and deployment. Proposal,
+ kick-off and managing the open sourcing programme (sociomantic-tsunami_).
+ Migration from D1 to D2.
`Sociomantic Labs GmbH`_ [Software Developer] (2011-2013):
Development of a high performance, distributed real-time bidding platform (in
particular involved with the recommendation system and in-house database
engines (DHT_, DLS_, DMQ_). Migration from Subversion to Git (GitHub_)
- introducing peer review. Linux server tuning for high load situations.
+ introducing peer reviewing. Linux server tuning for high load situations.
-Freelance independent professional (1997-2011):
- Mostly small websites development and the backend daemon (written in Python)
- for a Linux_ router administration application.
+Freelance independent professional (2011):
+ Mostly web development in LAMP / Python.
`Integratech S.A.`_ (2006-2011):
Development and maintenance of a monolithic (carrier grade) *softswitch*
- (H.248 in particular). Design and development of a new modular and
+ (H.248 in particular) in C++. Design and development of a new modular and
distributed version of the *softswitch*.
`Facultad de Ingeniería`_, `Universidad de Buenos Aires`_ (2004-2009):
LAMP web development and some Linux_ system administration.
`Ministerio de Economía`_ Internship (2001-2004):
- LAMP (Linux_, Apache, MySQL, PHP) web development and some Linux_ system
- administration.
+ LAMP (Linux_, Apache, MySQL, PHP) web development and some Linux_ sysadmin.
+.. _noclick.me: https://github.com/noclick-me
+.. _Lunofono: https://github.com/lunofono
.. _Ministerio de Economía: https://web.archive.org/web/20040113055745/http://www.mecon.gov.ar:80/
.. _Facultad de Ingeniería: http://www.fi.uba.ar/
.. _Universidad de Buenos Aires: http://www.uba.ar/
.. _DLS: https://github.com/sociomantic-tsunami/dlsnode/
.. _DMQ: https://github.com/sociomantic-tsunami/dmqnode/
.. _GitLab: https://gitlab.com/
+.. _QuoScient GmbH: https://www.quoscient.io/
+.. _Rust: https://www.rust-lang.org/
Education
Secondary school diploma, specialized in science, technology and design.
`Facultad de Ingeniería`_, `Universidad de Buenos Aires`_, Argentina (1998-2010):
- Informatics Engineering. Thesis: `Garbage collection in the D programming
- language`__.
+ Informatics Engineering. Thesis: `Concurrent garbage collection for the
+ D programming language`__.
__ https://llucax.com/proj/dgc/index.html