Scroll To View More
Daniel d'Andrada Tenório de Carvalho

Daniel d'Andrada Tenório de Carvalho

Joinville - State of Santa Catarina, Brazil
Member since April 15, 2017
Daniel has been working with C++ and Linux since 2005. He worked at Nokia on all of its Linux devices—from the 770 internet tablet to the N9 smartphone—and later with Canonical on its converged shell/window manager (Unity 8) for phones, tablets, desktops, and laptops. He also has quite a bit of experience with the Qt toolkit.
Daniel is now available for hire
Portfolio
Experience
  • C++, 13 years
  • Linux, 12 years
  • Qt, 9 years
  • QML, 6 years
  • JavaScript, 5 years
  • Python, 2 years
Joinville - State of Santa Catarina, Brazil
Availability
Part-time
Preferred Environment
Linux, Vim, Git
The most amazing...
...thing I've coded was a photon-mapping renderer back at university—created from scratch and all by myself.
Employment
  • Software Engineer
    2012 - 2017
    Canonical
    • Working on the Unity 8 shell and compositing window manager. Unity 8 was used on Ubuntu Phone (phones and tablets) and would cover all other use cases and form factors(desktops and laptops), adapting to the device where was being run and the connected peripherals (external monitor, mouse, keyboard).
    Technologies: C++, Linux, Qt, QML, JavaScript
  • Lead Developer | Architect
    2008 - 2011
    Nokia
    • Acted as the technical lead of a part of the MeeGo Touch UI Framework: scene management and scene windows (i.e. dialogs, application pages, status bar, navigation bar, and more).
    • Devised the architecture and did the implementation of MeegoTouch Feedback Framework.
    • Worked as the architect of the MeeGo Touch UI Framework (during my last 10 months)—leading it to a successful release of Nokia N9 and its software updates.
    Technologies: Qt, C++, Embedded Linux
  • Software Engineer
    2005 - 2008
    INDT, Instituto Nokia de Tecnologia (Nokia Institute of Technology)
    • Worked with Linux technologies (free and open source software) for desktop and mobile devices (Maemo platform) such as Nokia Internet Tablets (770, N800, N810).
    • Made an OpenDocument import/export plugin (in C++) for AbiWord.
    • Did conceptual work on an OpenDocument viewer using Pango and Cairo Graphics libraries.
    • Developed several Python bindings for the Maemo platform (including a major refactoring on the Hildon bindings) and wrote tutorial documentations on Maemo development with Python.
    • Conceived and developed Telepathy Inspector and made some small contributions to the Telepathy D-Bus API specification.
    • Implemented the Nokia Internet Tablet Video Converter. It used Mozilla XUL Runner (XUL/JavaScript) meant for the multiplatform UI with some XPCOM components written in C++.
    • Developed also its back-end architecture (TCP server) and its Python plugin system.
    • Worked on its media conversion library (C++) for both DirectShow (Windows) and QuickTime (Mac OS X).
    Technologies: C++, Linux, Python, JavaScript, GTK
  • Software Engineer
    2004 - 2004
    Independent Contractor
    • Worked as a software engineer during the whole development of a project called "Brazil Alien Card Registration System," for the Brazil's federal police.
    Technologies: C++, MFC, TWAIN, GDI+, SQL, ADO
  • Software Development Intern
    2002 - 2003
    Jynx Playware
    • Worked on Futsim—a massive online multiplayer soccer management game.
    • Built a 3D game prototype and a 3D game using the multiplatform engine RenderWare.
    Technologies: Java, C++, PostgreSQL, SQL, Delphi, JavaScript
  • Software Development Intern
    2000 - 2001
    Radix Group (later called Mobile)
    • Worked on application development using C++ and DirectX to create interactive 3D environments.
    • Developed a web page hosting system using PHP and MySQL.
    • Created 3D object models with 3D Studio Max.
    Technologies: C++, DirectX, PHP, MySQL
Experience
  • Unity 8 (Development)
    https://launchpad.net/unity8

    I developed what would be Ubuntu's next generation Unity shell based on Qt/QML—targeting convergence across form factors.

  • QtMir (Development)
    https://launchpad.net/qtmir

    This project contains code to integrate Qt with the Mir display server as follows:
    - A QPA plugin and support module to enable Qt/QML to be displayed on a Mir display server.

  • QtUbuntu (Development)
    https://launchpad.net/qtubuntu

    A Qt platform abstraction plugin for running Qt-based applications on the would-be new Ubuntu platform (using Unity 8 and a Mir display server).

Skills
  • Languages
    C++, QML, Python, JavaScript
  • Frameworks
    Qt Quick, Qt
  • Tools
    Vim Text Editor, Git, GDB, Valgrind, GTK+
  • Paradigms
    Object-oriented Design (OOD)
  • Platforms
    Ubuntu Linux, Linux
  • Other
    GUI
Education
  • Bachelor's degree in Computer Science
    2000 - 2005
    Universidade Federal de Pernambuco - Recife, Brazil
I really like this profile
Share it with others