Bay Area -- California (US)
Last updated on 2023-11-24
I'm a computer enthusiast for 22 years and a professional software developer with 14 years of experience.
I am well versed in exploring new technologies to assess their characteristics and the problems they pose in their adoption. While I forgot most of them during the years, I retain for most part their underlying principles and problems.
I am able to troubleshoot issues with the software/infrastructure I deal with, even with little/no previous context -- either by technical means or by involving/escalating to the right people.
I employ theory, experience and pragmatism to deliver software within the constraints given. This is not always easy, but each time I get a little bit better in understanding tradeoffs and learn from my mistakes.
I'm aware I have still room for improvement -- for this reason I practice new skills, revise known ones, keep up to date with trends, and take inspiration from apparently unrelated fields like psycology and economy.
The roles I fit best are Software Engineer and Software Engineer in Test (or equivalent roles). I would be interested in working on operating systems, compilers, developer tools, platforms, real-time/embedded systems and videogames.
Support and improvement of the quality of the Swift compiler (and the clang compiler to a lesser extent)
Execution of daily software builds of iOS and its related products.
Development, maintenance and support of software for Points of Sale (.NET 3.5/4.0/4.5):
Online and approximate algorighms, concurrency, distributed systems, cryptography, semantics of programming languages, static analysis, data warehouse, business intelligence, multimedia, hypermedia, audio/video compression, bioinformatics, real-time systems, information retrieval, wireless networks, ITIL v2, abstract algebra, constraint programming, machine learning
Programming, algorithms, software engineering, relational databases, SQL , XML, probability, statistics, logic, operational research, programming languages, linear algebra, mathematical analisys, computer architectures, operating systems, networks, automata, numerical analysis, artificial intelligence, discreet mathematics, security
Computer science (programming, operating systems, DBMS, boolean logic), mathematics (analysis, integral, derivatives), electronics (transistors, operational amplifiers, logical ports), statistics (probability, stochastics variables)
Object oriented paradigm, functional paradigm, design, profiling, distributed systems, compensation, bug tracking, single responsibility principle, unit testing, separation of concerns, test automation, build automation, backward compatibility and versioning, legacy code, refactoring, troubleshooting, timely escalation of issues, debugging, code reading, Getting Things Done, mentoring, rudimentary time management
According to the Common European Framework of Reference (CEF) level
In real life: