My name is Felice Tufo and I’m a freelance software engineer, with a proven track record in designing and implementing software for embedded, real-time and mobile systems. I’m also very interested in software development methodologies and their integration with project management best practices.
If you need to expand your internal software development team for a project that is falling behind schedule, or you’re starting from scratch and looking for an experienced consultant that can assist you from requirements elicitation to product release, just hire me!
What I’m good at
Software Design And Development
I have more than 15 years of experience in software design and development, starting from requirements elicitation, to software architectural and behavioural modeling with UML, down to programming and testing. I've been working with C and Assembly languages for embedded resource-constrained projects, but also with Java and C# for desktop and web applications. I also happened to use C++, Python and Matlab. I've coded both on Windows and Linux based platforms, and also used embedded real time OS such as VxWorks and FreeRTOS. I regularly use tools such as SonarQube, Lint and xUnit testing frameworks, for maximum code quality.
Software Configuration Management
I worked as Software Configuration Manager and Build and Release Manager for several clients. I've been using Git and Svn and tools such as Bitbucket, ClearCase, Synergy, Jenkins and Ansible, for which I have often developed integration and automation scripts. I know how a change management process works and how to put in place a Continuous Integration/Continuous Deployment system.
Processes And Standards
I've been working for quite a few years in highly regulated industries, especially those adopting the ISO 26262 standard (for automotive applications) and the IEC 62304 standard (for medical devices). I have a thorough knowledge of the V cycle and understand its tailoring to specific industry contexts. I also had some exposure to MIL-STD-498 and Common Criteria ISO 15408.
Project And People Management
I've been technically leading small groups of people, reasoning together on solutions to common problems, future developments and prioritizing work. I've extensively used Scrum and like to integrate some concepts (like the standups, the backlogs and the sprints) also in contexts using a rigid waterfall approach. I know how to use tools such as JIRA or Microsoft TFS/VSTS.
Trust me, I’m an engineer!
Some reviews on me and my work, taken from my Linkedin profile.
Warning: price spoiler!!
When you have to hire someone, skills tell you only half the story; the other half is the price. So here are my rates (excluding VAT):
Discounts may apply if the contract lasts longer than 6 months (for both remote and on-site work), or the main travel expenses are paid upfront by the client (for on-site work), unless the workplace is near my home in Bologna, Italy.
Anyway I believe that the essence of my work as a consultant is the willingness to learn, to broaden my skills and apply them in contexts no one had imagined before. I’m always eager to work on bleeding-edge projects, pushing me outside of my comfort zone! Therefore you can get additional discounted rates if your projects covers one or more of these topics:
- Linux kernel programming
- Linux distribution creation (Yocto)
- Embedded real time operating systems (VxWorks, QNX)
- Languages and technologies for safety critical systems (Ada, Spark, Rust)