David Marín

David Marín

Madrid, Spain
Hire David
Scroll To View More
David Marín

David Marín

Madrid, Spain
Member since April 21, 2015
David is an open source and open data enthusiast with 16 years of experience as a professional developer. He has acquired a broad variety of skills including web programming (PHP and JavaScript), C, C++ (under Linux and Windows), and systems management. Of these skills, David specializes in web programming and has full-stack experience with Symfony PHP-based back-ends and jQuery front-ends, as well as with WordPress-based sites.
David is now available for hire
Portfolio
Experience
  • PHP, 16 years
  • C, 15 years
  • JavaScript, 12 years
  • jQuery, 6 years
  • WordPress, 5 years
  • HTML5, 4 years
  • Symfony2, 4 years
Madrid, Spain
Availability
Part-time
Preferred Environment
LAMP, Symfony, Linux, Javascript
The most amazing...
...algorithm I've developed is the control system for the automatic ventilation in Madrid Calle-30, a network of more than 40km of urban tunnels.
Employment
  • Pro-bono System Manager & Web Developer
    Fundación MAIOR
    2003 - PRESENT
    • Responsible for the remote managing of a network of 5 Windows computers and a Linux file and mail server.
    • Developed and deployed www.maior.es using WordPress and WooCommerce.
    Technologies: WordPress, PHP, Debian, WooCommerce
  • Web Developer for hyperbaricstore.com
    Adapt Marketing (via Toptal)
    2016 - 2016
    • Corrected several problems due to an attack on the server using WordPress API.
    • Setup a webpage using WordPress and WooCommerce, including selecting and adding plugins and generating custom plugins for specific features.
    • Migrated Photoshop design to HTML+CSS using a newly developed WordPress Theme.
    Technologies: WordPress, WooCommerce, Linux
  • Linux Engineer
    cmd Inc. (via Toptal)
    2016 - 2016
    • Created PAM libraries in C to audit and monitor sessions and executed commands in Linux systems.
    • Developed a method that leveraged a pre-loaded library to enable capturing output generated from command-line commands and sessions.
    • Developed a method for auditing and monitoring commands executed from shell-scripts, including built-in shell commands.
    Technologies: Linux, C, PAM
  • Web Developer
    Meridix Creative, Inc. (via Toptal)
    2016 - 2016
    • Modified website so it now uses Stripe payment gateway instead of PayPal's Payflow API.
    • Modified the style of several pages on the website.
    Technologies: PHP, Azure, SQL Server, Stripe
  • Web Developer
    Forelock (via Toptal)
    2015 - 2016
    • Adapted the site to use Braintree payment gateway.
    • Worked on security clean-up for the whole site, removing several security issues as potential SQL injection points.
    • Developed new features involving back-end and front-end modifications.
    Technologies: PHP, MySQL, HTML
  • Software Developer & System Manager
    SICE
    2006 - 2016
    • Worked on full-stack development and deployment of a proprietary reporting system for Canal de Isabel II, the public drinking water supplier of Madrid. The back-end uses C#-based Microsoft's MVC Framework, using nHibernate. The front-end is designed using ReactJS and Bootstrap.This involved leading a team of four people.
    • Worked on full-stack development and deployment of SICE Nautilus - a web-based operational assistance system including support for incident, fleet, inventory, and maintenance management. The back-end uses PHP-based Symfony framework and front-end designed with jQuery, Datatables and Leaflet.This involved leading a team of three people.
    • Worked on full-stack development and deployment of a web-based report system for SICE's ITS solution. My work dealt with the optimization of queries and back-end improvements for allowing the generation of reports involving huge quantities of data and exporting them to PDF/Excel files. The project was coded using PHP/Symfony, jQuery, Datatables and Highcharts.
    • Worked on the water control system for the Segura Basin. Dealt with the analysis, design, and implementation of new features for the Basin Control Center including interfacing with an automatic telephone service. The project was done using C++, InfoPlus.21, SCADA, and an Oracle database.
    • Worked on the analysis, design, and implementation of a new automatic calculation system (using Java and ANTLR tool) and other Java modules for the back-end of a new SCADA system for dam auscultation against a MySQL database. Deployed as the water control system for the Ebro Basin and in dams managed by Iberdrola (Spain).
    • Developed new features for the Basin Control Center (C++ services on Windows) of the River Tagus Basin. I oversaw deployment of a new communication system and network of more tan 200 embedded x86-based remote units based on Linux as well as the implementation of systems for remote administration and update capabilities for these remote units.
    • Developed automatic ventilation algorithms (PHP and proprietary languages) for the tunnel control system of Madrid Calle-30. My work on the project dealt with the configuration, deployment, optimization, and troubleshooting of ERU systems, with a special focus on ventilation and fire detection subsystems. I also developed several features aimed at improving the scalability and robustness of the Remote Control Unit so that it could support a larger number of I/O signals and connections (C++ for embedded Linux system using x86 arch).
    • Was responsible for deployment and management of internal Linux and Windows servers (CVS, SVN, Git).
    Technologies: PHP, JavaScript, Symfony, jQuery, Leaflet, C, C++, Java, PostgreSQL, Oracle, MySQL, SQL Server, InfoPlus.21, Linux, CVS, Subversion, Git
  • Web Developer and System Administrator
    Navigate Oceania (via Toptal)
    2015 - 2015
    • Fixed problems in multi-domain site where the content should be replicated in all the sites.
    • Fixed hacked WordPress installation.
    • Added space for advertisements in all the pages.
    • Fixed problems with translations in the site.
    • Updated and cleaned up the plugins used in the site, as many of them weren't needed.
    Technologies: WordPress, PHP
  • Web Developer & Technical Consultant
    Miguel Buckenmeyer & Co.
    2010 - 2012
    • Created, installed, and managed Wordpress sites.
    • Integrated a web-based file manager in a PHP custom site, and helped to solve problems in it due to the usage of Java-based plugins.
    • Gave technical assistance for the projects.
    • Customized an advanced Wordpress template, implementing a grid design for the articles.
    • Tweaked PHP-based website for Spanish parfum company, solving some problems and programming some new features.
    Technologies: PHP, Wordpress, HTML, CSS
  • Manager of Version Control Systems/C++ Developer
    Entelgy
    2005 - 2006
    • Led the integration management effort for all Movistar prepayment projects (Spain and Latin-America) and the administration of several Linux and Solaris CVS servers.
    • Worked on the implementation of new features for the Movistar Spain prepayment project. This involved C++ multi-architecture development and an extensive use of C++ templates.
    Technologies: CVS, C++
  • Web Developer and Project Leader. Systems and Database Manager.
    Desarrollo y Recursos
    2003 - 2005
    • Worked on the administration, automation, and modernization of web (Apache+MySQL+PHP) and mail servers (Sendmail + Dovecot). Helped define policies for security, configuration management, development, and backups.
    • Developed a custom workflow and file management system for San Carlos Clinic Hospital (Madrid, Spain) using PHP for web programming and FDF for printable/electronic forms.
    • Was responsible for the design and implementation of an online showcase.
    • Was responsible for the analysis, design, and implementation of customized services for www.iea.es.
    • Worked on the analysis, design, and implementation of a service for getting optimal routes between museums.
    Technologies: PHP, Debian, Sendmail, Apache, Dovecot
  • Co-owner/System Manager/Software Developer
    Advanced Software Production Line
    2000 - 2003
    • Worked on installation, management, support, and security tasks in Debian GNU/Linux servers and firewalls for small and medium enterprise environments.
    • Was responsible for project management, analysis, design, and implementation of AF-Architecture, an multi-tier modular architecture for enterprise software development under GPL open license. The project webpage was programmed using a PHP-based app, TYPO3.
    • Worked on the analysis, design, and implementation of a CMS system for the firm webpage (www.aspl.es) using PHP.
    Technologies: C
Experience
  • Linux audit and monitoring system (Development)

    For a Canadian start-up I developed a Linux audit and monitoring system based on a pre-loaded library and PAM module that captured all the executed commands and their generated output.

  • Hyperbaric Store (Development)
    https://hyperbaricstore.com

    I developed the website from scratch, translating Photoshop mockups to HTML+CSS+JavaScript, and using and customizing WordPress and WooCommerce.

  • Reporting system for Canal de Isabel II (Development)

    New report generation system for Canal de Isabel II, the main public water supplier in Madrid, Spain.
    Back-end based on C#, ASP.NET, MVC Framework, nHibernate, and Microsoft Excel.
    Front-end developed as a Single Page Application, using ReactJS and Bootstrap.

  • Nautilus: Web-based Operational Assistance System (Development)
    http://www.sice.com/en/business-areas/intelligent-traffic-systems/inter-urban-traffic

    Main Designer and Developer of this modular web system that provides all needed features for supporting infrastructure operation and exploitation: event and incident management, fleet management, stock control, preventive and corrective maintenance, and shift management and works management. Different modules can be installed based on the requirements of each project.

  • SIDERA Reports: web based reporting system for SICE's ITS solution (Development)
    http://www.sice.com/en/business-areas/intelligent-traffic-systems/inter-urban-traffic

    Main Designer and Developer of this web-based report system for SICE's ITS solution. This solution provides several reports related to traffic management that are shown on the web, or can be exported to Excel or PDF formats.

  • Fundación MAIOR website (Development)
    http://www.maior.es

    Webpage for an NGO using Wordpress with several plugins, and WooCommerce for the online shop.

  • gnoMint: open source tool for the management of an X.509 Certification Authority (Development)

    Project Leader and main Developer.

    gnoMint is a tool for easily creating and managing certification authorities. It provides fancy visualization of all the pieces of information that pertain to a CA, such as x509 certificates, CSRs, and CRLs. gnoMint is currently capable of managing a CA that emits certificates that are able to authenticate people or machines in VPNs (IPSec or other protocols), secure HTTP communications with SSL/TLS, authenticate and cipher HTTP communications through Web-client certificates, and sign or crypt email messages.

    It's programmed in C using GTK+, SQLite and GnuTLS libraries.

    The project was created as the final year project of my Master's Degree in Computer Science Engineering.

  • Kelly Doe Studio website (Development)

    A website based on WordPress software. The website was mainly based on pictures of designs made by the studio.
    The base template was totally transformed, so the main page showed a very different grid-based layout for the main page.

  • Calculation Engine for Damdata: Dam Auscultation SCADA (Development)

    Design and full implementation of a calculation engine programmed in Java for DamData: Ofiteco's specialized dam auscultation SCADA.
    The formulas are expressed in a formula definition language that is defined formally through lexical and syntax grammar.
    These formulas are compiled to grammar-trees through compiler classes generated using ANTLR.
    The formulas are invoked by the SCADA and allow different calculations using current and historical data.

  • Madrid Calle-30 Urban Tunnels (Development)
    http://www.sice.com/en/relevant-projects/control-centre-madrid-calle-30-tunnels

    In the context of the construction of Madrid Calle-30 tunnels (a 47 km urban tunnel network) and the development of its control system:
    I was responsible for analyzing, designing, and developing the ventilation algorithms for activating and controlling the different fans and ventilation-related equipment in the tunnels, following the guidelines marked by experts in the field.
    I also worked on improving the scalability and robustness of SICE's Remote Control Units (Linux embedded systems based on x86 architecture), so that they could manage and control more than 9000 analog and digital inputs and outputs.

  • Employee portal for Hospital Clínico San Carlos (Madrid) (Development)

    The system allows the employees to start different procedures (asking for vacation, notifying change in family situation, taxes...) that involve several steps of bureaucracy.
    In every step, the assigned group of people are notified about the pending actions, allowing them to interact with them from the application.

    Using PHP and MySQL in the server and PDF and FDF for the forms.

  • Routing calculator for Huexpo.net (Development)

    In the context of the development of an institutional website for the different museums in the province of Huesca (Spain), I developed a routing engine for calculating optimal routes for visiting the different selected museums.

    Based on the traveler's algorithm, the different routes were pre-calculated for ensuring a fast response to the user.

  • Developer’s Guide to Open Source Licenses (Publication)
    Many developers often overlook, or do not thoroughly think through the implications of open source licenses. Whether you’re planning to open source your own project under one of these licenses, or you intend to integrate some other open source project into one of your own, it’s important to have at least some knowledge of what these licenses are, how they may affect your projects, and how they complement or contradict one another. In this article, Toptal engineer David Marín gives us a comprehensive guide to some of the most popular open source licenses, and several rules of thumb to follow when choosing a license for future open source projects.
  • David is a mentor in the Toptal Global Mentor’s Program. This program is a partnership between Toptal and General Assembly to provide high quality mentorship for students from minority and low income backgrounds who are looking to begin their careers as professional software engineers. David shows commitment to diversity in tech by mentoring a General Assembly student every week for a year, covering everything from coding tips and tricks to advice on making it in the industry.
Skills
  • Languages
    JavaScript, HTML, HTML5, PHP, C, CSS, Bash Script, Bash, C++, CSS3, Java, C#, Visual Basic 6 (VB6)
  • Frameworks
    Symfony, Symfony2, BEEP, NHibernate, Bootstrap 3, MVC 4.5
  • Tools
    CVS, Subversion, DataTables, Exim4, Apache, Bitbucket, Redmine, GitHub, GTK+, ANTLR, Visual Studio, Turbo Pascal, Git, Composer, Handsontable, Gimp, Bower, SoapUI, Nagios
  • Platforms
    Ubuntu, Debian Linux, WordPress, Linux, WooCommerce, Android, Windows, Oracle, Embedded Linux
  • Storage
    JSON, MySQL, PostgreSQL, MariaDB, SQL Server
  • Misc
    Unix Shell Scripting, gnoMint, jQuery DataTables, AJAX, Client-server Model, SOAP, X.509, TCP/IP, GNU, Linux Kernel Drivers, Embedded Systems, Image Editing
  • Libraries/APIs
    Doctrine, jQuery UI, Braintree API, jQuery, OpenStreetMap API, Twitter API, LeafletJS, React.js
  • Paradigms
    Model View Controller (MVC), Unit Testing
Education
  • Certificate degree in Software Security
    University of Maryland - College Park on Coursera
    2015 - 2015
  • Master's degree in Computer Science
    Universidad Politécnica de Madrid - Madrid, Spain
    1998 - 2003
I really like this profile
Share it with others