My Resume

David Checa Marín

Software Architect / Senior Developer

I am a highly-skilled Software Architect, Senior Developer, Web AppSec Expert and Cloud Architect in Microsoft Technologies with more than nineteen years of successful experience in designing and developing software platforms for International clients in different business areas: Financial Services, HR, Insurance & Health Care, Science & Applied Maths, and Financial Markets.  I am a passionate software architect continually seeking to learn and grow.

Tasks and skills as a .NET Technical / Solution Architect

 Designing, implementing and monitoring large scale architectures for IBEX35 companies embracing best practices and design patterns.

  • Leading transitions of monolithic .NET Framework web applications through migrations to a new modern architecture and technology stack including refactoring and re-architecting critical sections of the application.
  • Coaching and mentoring software development team members to ensure we meet or exceed industry best practices including good object-oriented design (SOLID), TDD, and appropriate use of technology and design patterns, including code reviews.
  • Leading assessment engagements with customers to evaluate their current infrastructure and application tools, technologies, techniques and processes, providing recommendations for improving their ability to deliver applications faster and more often
  • Deep experience implementing B2B integrations and distributed systems.
  • Solid backend engineering background having a deep understanding of scalable systems
  • Writing and editing documentation and knowledge base articles, including reference architecture materials and design patterns for SDLC support. Very pragmatic about technology decisions, using the best tools for the job and don’t get caught up on the hype-train

Skills as a .NET Senior Developer 

  • Very strong about all .NET Framework /.NET Core technology stack and programming languages, including C#, VB.NET, ASP.NET MVC, Razor, WebAPI, WCF, WebForms, Azure (IaaS and PaaS), LINQ, EntityFramework, WinForms, WPF, TPL, APM, C++
  • Experience with DDD, CQRS, REST API, Microservices Architectures, SOLID and design patterns
  • Strong with Agile, Test Driven Development and Continuous Delivery / Continuous Integration concepts
  • Deep Metaprogramming expertise in .NET with Mono.Cecil, CodeDOM, T4, CLR Profiling API, Lambdas, Reflection Emit and DLR. Experience in low latency systems and high performance .NET solutions

Tasks and skills as a Web Application Security Expert 

  • Deep understanding of common security threats facing the software industry : OWASP Top-10
  • Solid knowledge about IAST / RASP solutions and defensive programming techniques
  • Knowledge of web-based security protocols & frameworks and their built-in vulnerabilities
  • Experience in providing DevSecOps solutions
  • Training client teams in Web Application Security concepts

Tasks and skills as a Quantitative Developer 

  • Experience in modelling computational finance, portfolio theory and asset pricing models with C#, F#, C+ and R and low-latency event driven systems. Strong Math & Statistical knowledge for model development
  • Experience working in fixed income, OTC derivatives, DMA and e-trading
  • Collaborating with QuantConnect backtesting-algorithmic trading platform

Education

Bachelor of Science, Fundamental Mathematics (hons)
Complutense University, Madrid, Spain
5-year degree (Honors Curriculum)
Master of Science, Applied Mathematics
Complutense University, Madrid, Spain
Research involved image recognition via neural networks
IO, Optimization, Linear & Non-Linear programming, Cryptography, Chaos Theory
Master in Financial Engineering, MFE (in progress)
World Quant University, New Orleans, LA,EEUU
Financial Markets, Econometrics, Discrete-time Stochastic Processes, Computational Finance,
Portfolio Threory and Asset Pricing, Machine Learning in Finance

Current Certifications

  • Microsoft® Certified : Azure Developer Associate
  • Microsoft® Certified Professional Developer (MCPD) – .Web Developer 4.0
  • Microsoft® Certified Technology Specialist (MCTS) – .NET Framework 4.0, Web Applications
  • Microsoft® Certified Technology Specialist (MCTS) – .NET Framework 2.0, Web Applications
  • Microsoft® Certified Technology Specialist (MCTS) – .NET Framework 4.0, Data Access with Microsoft .NET Framework 4
  • Microsoft® Certified Technology Specialist (MCTS) – .NET Framework 4.0, WCF Development with Microsoft .NET Framework 4
  • Microsoft® Certified Professional (MCP): Microsoft Development Foundation (Net Framework 2.0)

Programming Languages & Related Technologies

  • Visual Studio VS2019 /VS2017 /VS2015 /2013 /2012 / 2010 / 2008 / 2005 / 2003 / Visual Studio Code
  • NET Framework 4.8/4.7/4.6/4.5.1 /4.5 / 4.0 / 3.5 / 3.0 / 2.0 / 1.14 / 1.0,
  • Core 3.x /2.x/ASP.NET Core /EF Core / Docker / Kubernetes
  • Microsoft Visual C#, Microsoft Visual Basic .NET, Microsoft Visual C++
  • NET MVC, ASP.NET Core /WebAPI – HTML5 – CSS, Bootstrap, XML, XSL, XSLT, XSD
  • WCF & WWF, SOA under Microsoft Technologies’,
  • LINQ under Microsoft Visual C#, (2XML, 2Objects, 2Entities, etc…)
  • Entity Framework, ADO.NET, Dapper, NHibernate, Fluent,
  • Metaprogramming in .NET (Mono.Cecil, CLR Profiling API, CodeDOM, T4, Lambda Ex., Roslyn)
  • Multithreading & Asynchronous in .NET (.NET ThreadPool, APM, EAP, TPL, Async/Await, etc..)
  • Microsoft ASP.NET Web Controls, AJAX, JavaScript, jQuery, Prototype, Knockout, Angular, etc…
  • PowerShell, Azure CLI, Blazor
  • Web Services ASMX 2.0 / 3.0 & WSE+ 2.0 / 3.0
  • WPF & Silverlight, WinForms, Net Multi-threaded Applications
  • Microsoft Visual Basic 6.0, ASP y VBA.
  • Power Builder, Borland Delphi, Java, Eclipse, A.R. Remedy. ABAP/4
  • PL SQL, Transact SQL, c. UML

Cloud, CD /CI & Agile

  • Microsoft Azure (IaaS / PaaS), WebJobs, Azure Functions, AppServices, Azure Batch, Azure Storage/Azure DevOps/DevSecOps / Azure MFA / Azure Apps-Services for Containers / AWS (EC2, S3)
  • Git, Bitbucket, VSTS, TFS, Subversion, Jenkins, SourceTree, Azure DevOps, Jira, Confluence, Asana
  • SCRUM, Kanban

Architecture, Patterns

  • DDD N-Layered .NET Architecture, CQRS, Event Driven Design
  • SOA, Microservices Architecture, RESTful.NET, REST Hatoas, HalForms, Web API, Swagger
  • TDD, NUnit, Selenium, xUnit, Rhino Mocks, Galio
  • IoC (Dependency Injection – Service Locators), Unity 2.1, Castle Windsor, Autofac, etc
  • Microsoft Extensibility Framework (MEF), Microsoft Enterprise Library 5.0

At Server

  • IIS 10/8/7.5/6/5, Apache, Kestrel, WAS
  • SharePoint, Microsoft Content Management Server, BizTalk Server
  • Hyper-V, VMware, Windows Server-2019, 2016, 2012, 2008R2
  • DotNetNuke /SiteCore/Umbraco/ NopCommerce/ Able Commerce /PortalCMS

Rdbms

  • Microsoft SQL-Server 2019/2016/2012/2008/2005/2003
  • Oracle 8i / 9i / 10i / 11i / 12g
  • DB2, MySQL, PostgreSQL, RDB, Access, Sybase, Paradox

Tools & Frameworks

Mono Cecil, CLR Profiling API, Git, SourceTree, TFS, AWS, Subversion, Jenkins, UModel, JetBrains dotTrace Performance, JetBrains dotTrace Memory, ANTS Memory Profiler, ANTS Performance Profiler, ReSharper. ILSpy, de4net, dotOfuscator, ILAsm, ILMerge, Fody, NConcern, NDepend, Runtime AOPs, Postman, SOAP UI,  Enterprise Architect, Redmine, Reflector, Visual Paradigm, XML Spy, Log Parser, Microsoft  Application Center Test, Microsoft Visio, Able Commerce 7,  Rational Rose, Microsoft Project, Crystal Reports, Active Reports, etc..


Projects & Experience

HDIV SECURITY (DEC. 2016 – PRESENT DAY)

Solutions Architect / Senior -Developer

Working as Microsoft Solutions Architect and Senior Developer in designing and building .NET IAST Agent and .NET RASP solutions for the company. These frameworks enables web applications protect themselves from OWASP Top 10 security risks: Injection, Broken Authentication, Sensitive Data Exposure, XML External Entities, Broken Access Control, Security Misconfiguration, Cross Site Scripting, Insecure Deserialization, etc….

Tools : Visual Studio 2017/2015,IAST, RASP, IL, NET Framework, NET Core,ASP.NET MVC,Mono

indra (Jun. 2016 – dec. 2016)

Solutions Architect 

High-profile position as a hands-on Microsoft Solutions Architect for critical Indra´s clients like Kiron Hospitals, Gowaii and Inversis.

  • Responsible of designing current invoicing asynchronous architecture for Kiron Hospitals
  • Participating in architecture design of current Gowaii third-party integrations
  • Sucessfully delivering of new MuchoViaje.com web as a result of the fusions of pre-exiting portals

Tools : Visual Studio 2015, MSMQ, WCF, ASP.NET MVC, Clustering, WPF, SignalR, AngularJS, NCache, AJAX, TFS, N-Layered DDD, IoC, WS* Security, Ws* Addressing

Charter 150 S.L (Jul. 2012 – JUN. 2016)

Solutions Architect /Lead Software Engineer
Working as Microsoft Solution Architect and Technical Team Leader in designing the Company SOA Architecture and developing ABT Web Platform (www.aboattime.com); System completely modeled by using Microsoft Technologies: N-Layered DDD Architecture, VS2010, Framework 4.5, WCF, ASPNET, C#, MEF, NHibernate, Fluent, TDD, Rhino Mocks, Galio, Unity 2.1, Log4Net, Automapper, Subversion, IoC, AJAX, Jquery, SQL Server 2008, XML. Responsibilities included:
  • Design and Implement SOA Company Architecture under WCF (Create Distributed Service and Application Service Layers, Custom Transport-Message Security, Data Security, Tracing, Fault Handling, DTOs, Monitoring, Caching polices, etc..)

Mercer Human Resource Consulting (Aug.2008 –Jun.2012)

2ª Stage: May 2009 –Feb.2012
Solutions Architect /Lead Software Engineer
Working as Microsoft Solution Architect in designing and Customizing Mercer HR Consulting International Employee Benefits Platform (BA2 System – Benefit Asia). International project based in Singapore which started at the end of 2008. Large scale project which provides Human Resource services for more than 200 international VIP companies. This dual system is comprised of two big pieces: Generic Employee Benefits Site and Back Office. System completely modeled by using Microsoft Technologies: VS2008 / 2010, Framework 3.5, SQL Server 2005/2008, ASPNET, XML, C#, VB.NET, Dotnetnuke, JavaScript, XML, XSD, and XSLTs, Unit Testing with Selenium, Multi-Threading, .NET Thread-Pool tunings, Data Security, .NET Instrumentation, etc…
Responsibilities:
  • Create and distribute technical approach documents to 20-team of developers
  • Transform the business requirement from analysts into specific technical solutions
  • Tracking Team Leaders activities in supervising the developers activities
  • Coordinate and delegate development tasks to team members.
  • Performance tuning NET Thread Pool, Caching Policies, Code and Design Patterns, Database indexes, Stored procedures for supporting high concurrence levels
  • Took the existing architecture to the limits of improving stability, performance and expanding features
1ª Stage: Aug.2008 – May 2009
Solutions Architect / Lead Software Engineer/ IT Project Manager
Comprehensive design and creation of Mercer (Spain) Employee-Benefits tool for the Spanish market. Multi-purpose dynamic system oriented to model employee-benefits (and employee compensation) needs from near 100 companies in Spain. System capable to integrate changing business logic with minimum effort thanks to its generic and abstract core. Application developed with Microsoft VS2008, ASPNET, IIS7.0, Microsoft Visual C# 3.0,Framework 3.5 , LINQ-(2XML, 2Objects, 2Sql), Lambda Expression for dynamic modeling, Microsoft SQL Server 2005, XML, XSD, TDD, IoC (Dependency Injection & Service Locators), Design Patterns, JavaScript, CAS Policies, Membership Provider, Reflection techniques (only for discovering), Unit-Testing, Multi-Threading, etc…
Responsibilities included:
  • Analysis & conceptual modeling about business dynamic entities providing technical-specific approaches for implementing in a real scenario
  • Designing and development of Core System architecture (Abstract Core).
  • Provide technical guidelines and coordinating a 4-team of developers
  • Helped to define the technical solutions to business issues and adapt the existing solutions to new business needs

 

Iridium Systems S.L: Siba [IPark project](Nov. 2010 –May 2012)

Solutions Architect / Lead Software Engineer
Designing & prototyping SIBA (iPark Platform). Large scale platform composed by several applications for providing urban parking services by using the Satellite data information. Designs for Kernel Algorithm, (KA) Abstract Business Logic Engine (ABL), SOA infrastructure, Administration and Configuration tools (Monitoring, Third-Party Integration, Reports, etc…) and  UI Agents. Platform integrated by a collection of applications: VS 2010, Framework 4.0, N-Layered DDD Architecture, Visual C#, SOA under WCF, Microsoft Enterprise Library, Entity Framework, ASP.NET MVC 3.0 for Third-Parties Portal, jQuery, , SQLServer 2008, XML, XSLTs, XSD, Design Patterns, IoC (Dependency Injection), Microsoft Unity 2.1, TDD, Galio for Testing, .NET Instrumentation for Monitoring, WCF Custom Message Security,
Responsibilities:
  • Mathematical Algorithm Modelization for KA Application by using neuronal networks & probabilistic tools
  • Design the general system .NET architecture for all integrated applications: Algorithm Foundation, iPark Framework, iPark Services, Siba Administration, Third-Parties Portal.
  • Coordinate task from development team
Defining System general development policies and conventions

 

Iridium Systems S.L: (Loyal Group, NancForc S.L, Icasa S.L)

Microsoft NET Trainer (May 2012 – Nov.2012)
Working as a Microsoft NET Trainer for different training companies (In parallel):
  • Development with Framework 4.0
  • Introduction to WPF
  • Designing Distributed Services under WCF
  • Entity Framework Fundamentals
  • MVC 3.0 Advanced Topics

 

ISBAN -Santander Bank (Jul.2006 – Aug. 2008)

Lead Software Engineer
Technical Lead of team responsible for developing and supporting the Consumer Finance Platform for Santander Bank in UK. (Specifically for Abbey National Bank). The system comprised three applications: Front, Middle and Back which currently supports credit (personal-loan) request from near 8000 car-dealers in United Kingdom. Front and Middle developed by using Microsoft Technologies: VS2003 / 2005, Framework 1.14/2.0, SQL Server 2003, ASPNET, XML, C#, VB.NET, Oracle 8i, Integration with Legacy Systems by using Reflection (Marshalling), Using custom encoding techniques, etc…
Responsibilities included:
  • Design and develop the .NET Workflow Machine for modeling the transitions in the proposal lifecycle. Near of 50 different states for main proposal
  • Develop of Finance Calculation Module
  • Creation of main interfaces and integrating with Scoring Machine (Modellica)
  • Develop main interfaces for Fraud Detection & Design and development of Third-Parties Generic Interface

 

Ineco – Tipsa (Feb. 2006 –Jun. 2006)

Technical Team Leader
Developing one of the core applications of the company in its internal connectivity policy. Here we developed a tool for connecting to the SAP system. Application developed by using .NET Framework 1.14 with Visual Basic and ASP.NET. On the other side SAP Connector Services and ABAP 4

 

Segitur (Jul. 2005 –Feb. 2006)

Analyst and Programmer
Migration, Developing and Go-Life for the main Spain Tourism Portal: www.spain.info. Design and Implementing Third-Parties’ syndication policies. ASPNET, SQL Server, Javascript, Content Management Server, XML, XSLTs (www.spain.info)

 

Michelin Spain (Jul. 2004 –Jul. 2005)

IT Project Manager and Architect

Analysis, development and go-live for the MCO System for Michelin Spain, coordinating a team with 2 Analyst and 4 programmers. Control, Process Centralization and Audit Log for the garage operations (Servirueda and VíaLider) and vehicle fleet maintenance (150.000) which belongs to the main Renting Car Companies in Spain

Two .NET applications: One hand a rich-client Web Forms application developed with Visual C# and on the other hand an NET Win Administration Application with .NET Remoting, Visual C++ improved at presentation layer with Syncfusion Controls. SQL Server for the central repository

Coritel-Accenture (Jan. 2001 –Jul. 2004)

Accenture: Freemap (Jan. 2004 –Jul. 2004)
NET Junior Architect
Analysis, design and development of Freemap Healthcare Application Platform (originally in C Foundation) to Microsoft NET Framework. The objective is to build a high level framework composed by a collection of NET Project Templates to facilitate the development task to the Freemap internal dev team.NET Framework 1.14, VS2003, Visual C#, Visual Basic, WS, XML.
Accenture: Endesa (Oct. 2003 –Dec. 2003)
Analyst & Programmer
Analysis and development of Endesa Accounting System. NET Framework 1.14, VS2003, Visual Basic, WS, XML.
Accenture: Caritas Barcelona (Nov. 2003 – Oct. 2003)
NET Junior Architect
Development and Go-Live for the main Caritas Barcelona Portal. Microsoft Content Management Server 2002, NET Framework 1.14, VS2003, Visual C#, WS.
Accenture: Banco de España (Mar. 2003 – Nov.2003)
Analyst & Programmer
Developing SEPBLAC platform as part of FATF (Financial Action Task Force), and connecting different heterogeneous environments. Java, Visual Studio 6.0, xml, xlst and Oracle as Repository.
Coritel: Santander Bank SCH (Jan. 2003 –Feb. 2003)
Analyst & Programmer
Updating and synchronizing the commodity values in the main Spanish markets (IBEX35).Hybrid Project under technologies J2EE and Microsoft .NET Framework (Visual C#, .NET Remoting, WS) 
Coritel: Eads Casa (May. 2001 – Jan. 2003)
Analyst & Programmer
Development of different internal EADS Client-Server applications with VB 6.0, Power-Builder 6.5, AR Remedy, Oracle, DB2, RDB and IBM MQ-Series: EADS Price Catalog, EADS Ground Control Tool, EADS Computers Inventory Tool

 

Goal Systems (Jan. 2001 – May. 2001)

Analyst & Programmer
Development of Active X controls for different optimization tools (Linear and No-Linear Programming) under Visual Basic 6.0 and Visual C++, working with ILOG Optimization libraries

Nexus 5 (Jan. 2000 –Jan. 2001)

Programmer & Mathematician
Working as Mathematician and Programmer for different science projects like Geowatt and Sigevi for Union Fenosa Engineering by using technologies like Win32 API, Active X controls, Visual Basic 6.0, Visual C++, HTML, DHTML and SQLServer

 

Hobbies

Football, Blacksmith, Math-Models & Finacial Markets