Domenico Cerasuolo, Developer in Naples, Metropolitan City of Naples, Italy
Domenico is available for hire
Hire Domenico

Domenico Cerasuolo

Verified Expert  in Engineering

Full-stack Developer

Naples, Metropolitan City of Naples, Italy

Toptal member since November 27, 2019

Bio

Domenico is a passionate and versatile software engineer with a robust foundation in native Android development and extensive experience in full-stack and system programming. He's worked in a wide range of environments, from small solo projects to large corporate environments, and he's ready to leverage his diverse skill set to tackle your unique challenges.

Portfolio

Meta
Linux, Rust, Python 3, C, Linux Kernel
Seez
Git, Kotlin, Android, Android SDK
TomTom
Git, Python, Kotlin, Android, Android SDK, Python 3

Experience

  • Linux - 10 years
  • Kotlin - 7 years
  • Full-stack - 6 years
  • C - 4 years
  • Rust - 3 years

Availability

Part-time

Preferred Environment

Git, Linux

The most amazing...

...project I've had the privilege to work on is contributing to the Linux kernel.

Work Experience

Software Engineer

2022 - 2023
Meta
  • Ported internal tolling for the Linux kernel infrastructure from Python to Rust. This infrastructure, deployed in many data centers worldwide, supports the development, debugging, and release processes of the Linux kernel across millions of machines.
  • Introduced Rust into the netconsole pipelines to monitor the Linux kernel health across the fleet, where refactoring and features needed to be implemented on the legacy C++ codebase.
  • Worked in coordination with other Linux kernel team engineers and cross-functionally to improve the effectiveness and capabilities of the Linux compressed swap cache and zswap.
  • Identified and resolved two critical memory corruption issues within the mainline Linux kernel.
Technologies: Linux, Rust, Python 3, C, Linux Kernel

Senior Android Developer

2019 - 2020
Seez
  • Introduced both Android and general development best practices, such as an architectural pattern (MVVM), automated tests, and code reviews.
  • Mentored a junior Android developer and conducted interviews with Android developer candidates.
  • Implemented new features and refactored old code to make tests friendly.
Technologies: Git, Kotlin, Android, Android SDK

Senior Android Developer

2018 - 2019
TomTom
  • Implemented new features for a B2B platform to be included in a new truck line by Daimler.
  • Maintained a big legacy codebase by integrating new changes from the upstream codebases of other teams.
  • Fixed many legacy bugs, some lingering in the codebase for years.
  • Developed a solution that allowed the B2B platform to expand its business cases.
Technologies: Git, Python, Kotlin, Android, Android SDK, Python 3

Android Developer

2017 - 2018
Numbrs
  • Implemented new features using Kotlin and RxJava in an MVP architecture.
  • Created a WebRTC-based Android library to support a video-call feature in the main app together with a small video-call only demo app.
  • Performed regular code reviews and round-table discussions in a team of ten Android engineers.
Technologies: Git, WebRTC, Kotlin, Android, Android SDK

Android Developer

2017 - 2017
MeeLogic
  • Developed an Android library to be used by a dedicated app to communicate with a dedicated wearable device via Bluetooth produced by a big German company.
  • Implemented a geofencing-like feature for a companionship app owned by the same German company.
  • Performed maintenance work on the companionship app fixing some nasty legacy bugs.
Technologies: Git, Kotlin, Java, Android, Android SDK

Software Developer

2012 - 2017
Self-employed
  • Implemented several web applications in the LAMP environment, most notably GrowSocial, a social media growth platform, and Appetitoo, a restaurant service app.
  • Created an HTML app quoting tool for the yacht shipyard Fiart to create quotes with iPads by sales representatives.
  • Created from scratch and maintained many Native Android apps within a team and as a solo developer.
Technologies: Git, LAMP, JavaScript, Java, Android, Full-stack

Experience

Numbrs

Numbrs allowed you to link all your bank accounts in one app, send money, and manage your expenses. It also featured a store where you could apply for bank accounts, credit cards, and loans. All the products in the store could be purchased remotely via VC, which wasn't that common of a feature at that time.

Airchat

An audio/video messaging app with a very unique UI. I worked on the main grid, a highly interactive RecyclerView implementation with rich gestures and animation, and the messaging recording and playback.

App for AOSP-based Intercom

I contributed to the development of Latch's intercom native app. I worked on enhancing the app's functionality and user experience, collaborating closely with a talented team to meet the project's goal and deadline.

Linux Kernel

I worked on a few features that landed in the Linux kernel mainline while working in the Linux kernel team at Meta. I implemented a few features in PSI and zswap, and also found and fixed two memory corruption bugs in mainline.
The gist of my work can be found at:
• git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/log/?qt=grep&q=cerasuolodomenico%40gmail.com

Education

2009 - 2011

Master's Degree in International Relations

Università "L'Orientale" di Napoli - Naples, Italy

Skills

Libraries/APIs

Retrofit 2, Android Architecture Components, RxJava 2, Firebase Android SDK, WebRTC

Tools

Android NDK, Android Studio, Git

Languages

Kotlin, Java 8, Python 3, C, Rust, Python, Java, JavaScript

Frameworks

Android SDK, Mockito, Espresso, Dagger 2, KOIN

Paradigms

Agile Workflow, Model View ViewModel (MVVM), Reactive Programming, Model View Presenter (MVP), Testing

Platforms

Android, Ubuntu, LAMP, Linux

Storage

SQLite, RoomDB, MySQL

Other

WebSockets, Audio Chat, Video Chat, International Affairs, Linux Kernel, AOSP, Full-stack

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring