About Me


David Barreto is an Electronic Engineer with a master’s degree in Systems Engineering who started his professional career in the telecom field. During that time, David developed many shell programs (Linux) and some others AWK programs to automatize repetitive tasks and process huge volumes of data. Also in that period of time he started working freelance as a programmer with web design companies, where he programmed a variety of static websites with HTML and CSS and dynamic ones using Javascipt, MooTools (does anyone remember that library?), jQuery, PHP and MySQL. Thanks to that experience he discovered that programming was not only something he was good at: it was his true passion.

At the end of 2009, David along with his father and brother started BCubo, a company dedicated to develop websites, web applications and training. In that period of his life he learned how to work with WordPress and Drupal to create websites, and the Symfony framework for web application development. Although he was able to fulfill all his clients requirements with those technologies, David felt that he should keep evolving as a programmer beyond the PHP ecosystem and that’s when he discovered a programming language truly object-oriented, concise and elegant to work with: Python.

Digging in the Python world was a true revelation and brought a lot knowledge and experience because he moved away from the Windows/PHP/Symfony/MySQL stack to the more robust and professional Ubuntu/Python/Django/PostgreSQL. Up until that point, everything he has learned in programming was self taught but he knew that something was missing, there are some things that is really difficult to learn by ourselves. That’s why in 2011 David was back on the University, this time to enroll on a master’s degree in systems engineering.

Even though his teachers thought at first that having and electronic engineer enrolled in a post-graduate course in computer science was odd, they never object it and allowed him to start his studies. Because of that, David could expand his knowledge in object-oriented programming, databases design, system modeling (mainly with UML) and architecture, requirements elicitation, project management, system quality and specially he learned a lot of software development methodologies (RUP, AUP, OpenUP, Scrum, XP, etc.). This last topic was so fascinating to him that he decided to focus his master’s thesis to the creation of a quantitative (measurable) method that allowed companies to assess precisely the software development methodology that was the better fit according to the characteristics of his clients, their company, the product to be developed, the team who will work on that and the project in general.

Armed with new knowledge David returned to work at a telecom company, but this time as a web developer with the goal to create applications that let them unleash the full potential of their platforms. While he was there, he not only developed the tools needed but also created courses for his coworkers and taught them the AWK programming language and Scrum for project management, a methodology that he considers essential for the success of any company, being a software company or not.

But in those telecom companies he saw a weakness. Although he had the knowledge needed to create an ambitious application, the work needed was too much for just one person and the company lacked the human and technical resources for the endeavor. For those companies, software is just a tool but not the end itself and, because of their size, they don’t have the corporate culture to nurture this kind of initiatives. Even knowing that the envisioned tool was badly needed, it became obvious that it was impossible to develope it internally.

Being aware of the situation and knowing first hand the needs of this kind of campanies, David partner with an old friend (Edgard Antonorsi) with a long trajectory in the telecom field that also shared his passion for programming, and together started a tech startup with the goal of solve this problem and enter in the niche market where telecommunications and programming intersects. The initiative started in mid 2014 and was called UpperLayer.

For the last year, David has focused in the frontend development of UpperLayer using Git, Yeoman, Grunt, NPM, Bower, Bootstrap, SASS and AngularJS. When David is not in front of his laptop programming, he is probably taking salsa casino dancing classes because he doesn’t want to be the only latino that does not know how to dance for sure.

If you want to get in touch with David you can do so in the Contact Me section.