Dario Bertini, Developer in London, United Kingdom
Dario is available for hire
Hire Dario

Dario Bertini

Verified Expert  in Engineering

Software Developer

Location
London, United Kingdom
Toptal Member Since
August 28, 2015

As a back-end developer, Dario takes pride in writing maintainable, succinct code, and he cares about automating things (CI and deployment). He's a huge fan of functional programming; he has coded in Haskell, Clojure, and other languages. He values FP because of how it helps to reason about code and write correct programs.

Portfolio

SecretEscapes
Java, Python
L2inc
Amazon Web Services (AWS), Celery, Flask, Redshift, AWS Elastic Beanstalk...
NCCGroup
Burp Proxy, .NET, Python

Experience

Availability

Part-time

Preferred Environment

Git, Mercurial, Emacs, Atom, NixOS

The most amazing...

...thing I've coded might be a regular expression matcher and generator for strings matching with the automata.

Work Experience

Software Developer

2016 - PRESENT
SecretEscapes
  • Created a tool to automatically compare competitors' prices.
  • Integrated the main app with a Salesforce back-end.
  • Set up deployment of some colleagues' internal applications.
  • Investigated app-runner inefficiencies, to shave several seconds off it.
  • Prototyped a Purescript front-end.
Technologies: Java, Python

Back-end Developer

2015 - 2015
L2inc
  • Migrated scrapers and code for data gathering to new systems, taking care of schema changes, new code, and dependencies.
  • Wrote an internal automated reporting system that would present historical data in multiple formats.
  • Handled AWS deployment, submitted upstream patches for the libraries in use, and reported vulnerabilities to vendors.
Technologies: Amazon Web Services (AWS), Celery, Flask, Redshift, AWS Elastic Beanstalk, SQLAlchemy, Python

Security Consultant

2014 - 2015
NCCGroup
  • Created a tool to scan a POSIX file system and aggregate data for post-exploitation.
  • Created a conversion tool to recover source files from OracleForms XML.
  • Created a parser for firewall rule files.
  • Performed security assessments for both UK and multinational companies.
  • Completed the internal training and curated/improved technical topics covered on the internal wiki.
Technologies: Burp Proxy, .NET, Python

Software Developer/DevOps

2014 - 2014
Audiencerate
  • Managed the provisioning of the system.
  • Wrote integration/acceptance tests.
  • Rewrote a 15kLOC legacy Java application in 300 lines of Clojure.
  • Deployed a Riemann instance and front-end for monitoring.
  • Created Python and Haskell scripts to maintain the system and exchange the data among the legacy deployment/separate systems.
Technologies: Selenium, Ansible, Python, Clojure

Pew

https://github.com/berdario/pew
A rewrite of virtualenvwrapper in pure Python. What I'm fond of is also the fact that I've been able to reuse the test suite from the original project.

Managemytime

https://github.com/berdario/managemytime
A demo project, showcasing a typesafe REST API in Haskell. (And some JavaScript+HTML as UI/front-end)

Mutagen Python3 Porting

https://github.com/berdario/mutagen
My porting to Python3 of this library that deals with audio file metadata. I've made mistakes while porting, but it was satisfying to see the test cases pass on both Python versions.

Strings -n Implemented in 3 Lines of Python

https://gist.github.com/berdario/114b2daf9b43fe924676
Not enough young developers are aware of mmap and end up re-implementing (poorly and less efficiently) incremental file reading when it's not really needed.

fulltextindex.hs

https://gist.github.com/berdario/6b89008b0b668df91270
A simple text index/full text search in Haskell. A simple, but non-trivial example of the power of higher order functions.

RegEx Unfolder

https://github.com/berdario/regexp-unfolder
This is a small Clojure project (just 100 lines), leveraging instaparse and Clojure core.logic. It defines a relationship between a RegEx FSM and the matching strings, letting you enumerate the strings that can match certain RegEx.
2006 - 2010

B.S. Degree in Computer Engineering

Università degli studi di Bergamo - Bergamo, Italy

Libraries/APIs

SQLAlchemy, Compojure

Tools

Atom, Emacs, Celery, LaTeX, Apache Maven, Travis CI, Jenkins, Git, Mercurial, bzr, Ansible

Paradigms

Functional Programming, Test-driven Development (TDD), MapReduce

Storage

Redis, Redshift, SQLite, Sphinx Search Engine, MongoDB, PostgreSQL

Languages

Python, PureScript, Elm, Clojure, Haskell, JRuby, Jython, Scala, C, C#, F#, JavaScript, Java, Ruby

Platforms

Linux, AWS Elastic Beanstalk, Amazon Web Services (AWS)

Frameworks

.NET, Selenium, Flask, JNI, Django

Other

Burp Proxy, i18n, NixOS

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