Francisco Gindre
contact: pacu {at} thecodebuffet {dot} dev
Note: if you are reading this on PDF, you can find the updated version here.
I have a Master’s Degree in Software Engineering. In my more than ten years of experience in iOS development, I've worked in many projects in diverse fields and sectors: NGOs, education, mass-media, publishing, entertainment, travel and FinTechs.
The last 5 years I've been developing and contributing to open source crypto-wallets and tooling in the Zcash ecosystem. If you are Zcasher, I’m pretty sure that you might have interacted with the code I work on.
I specialized in iOS development, but I've gained a lot of experience in other areas such as Blockchain, Research, Rust development, Open Source project maintenance and ecosystem outreach.
I have my true passions and nit-picks as anyone does but I'm a versatile developer as well. It has been pointed out to me that I'm good at getting to a new software codebase and making a meaningful contribution in fairly short amount of time while still adapting to the projects' conventions and styles. It's important to me to feel the vibe of teams and try to resonate with them instead of trying to just impose ones views. Every bit of source code has its context and time. A good contributor should look forward to understand what's been done, have respect for others' work, be gentle and ask the questions that help understanding such "context and time" and build on top of that. Furthermore, open source projects are built one commit at a time so, as a good contributor, one should try to leave every file one worked on in a better shape that how it was found by following and respecting maintainers' coding conventions.
Aug 2024 - present. (Ongoing)
As time went by the role as Zcash Wallet Community Developer (ZWCD) shifted to a DevRel kind of place. It was not really planned that way, it happened as the ecosystem needed it. A work philosophy of mine is to help were its needed and not only limiting to what one is supposed to by definition of the job description.
Key achievements
- ZecDev: A GitHub organization to develop Zcash tooling in community.
- Outreach to entities running ZEC infrastructure that depends on Zcashd
- Architecture review and advisory for Zaino project of Zingo labs
- Advisory and Zcash ecosystem representation for Red Bridge project at the Avalanche Summit 2024.
- Liason between teams in Zcashd deprecation.
- Developed FROST UniFFI wrapper and presented it to FROST Implementors community
Aug 2023 - July 2024 (1 year)
In late May 2023, after ECC restructured, I got a call from the Zcash Foundation inviting me to organize a workshop at Zcon4 in Barcelona about Zcash Wallets. I realized that my work had trascended my prior employment at ECC and that the circumstances merited that the Zcash Ecosystem had a liason between all wallet teams that represented the community and not a specific team. That's how the Zcash Wallet Community Developer grant took shape. For a detailed and context-rich version of this please refer to My journey as a Zcash Dev
User-Facing Development
- Developed ZIP-321 support libraries for iOS (Swift) and Android (Kotlin), enhancing payment request functionality.
- Collaborated to improve the ZIP-321 specification (discussion link).
Developer Tooling
- Built a FROST UniFFI SDK for Swift, GoLang, and other languages (repo).
- Created darksidewalletd datasets for testing, working with Zingo Labs (datasets repo).
- Contributed to enabling regtest support and custom checkpoints for SDKs (example PR).
Light Client Working Group
- Co-organized and rejuvenated LCWG meetings, focusing on work initiatives such as ZIP-315 and ZIP-317 support.
Ourreach, Community Engagement and Support
- Supported ChainSafe team along with ZCG to develop the javascript framework now known as WebZ.js
- Advised and reviewed the Architecture of Red-Dev software in their Red-Bridge project which will connect Avalanche and Zcash through an Avalanche Subnet bringing ZEC to DeFi and Privacy to AVAX.
- Actively involved in code reviews, tutorials, and user support within the Zcash community.
- Reviewed PRs from teams like NightHawk Apps, Zingo Labs, and ECC to improve code quality and ecosystem synergy.
- Actively involved in Ecosystem Outreach tasks such as the ZIP-320 Addresses deployment which helped avoid delisting from Binance which was a community concern at the time.
Aug 2019 - May 2023 (3 years and 10 months)
I started working at ECC as a contractor for 6 months to develop the iOS SDK for Zcash wallets. I ended staying much longer!
At ECC I was in charge of developing the first Zcash iOS SDK and the reference wallet applications. Partners and community members would use them to adopt Zcash in their codebases. I worked with amazing teams like Unstoppable, Edge and Nighthawk to support their needs as clients of the Zcash SDK.
In my day to day work, I was in charge of development, planning, scoping and release management of the Wallet team code alongside my Android counterpart. Besides being on top of the latest developments of the iOS ecosystem, it was also necessary to understand the underpinnings of the Zcash protocol and the different ZIPs (Zcash improvement proposals) to implement them on the SDK. This was a complex task which required using both Swift and Rust Lang. I was also in charge of planning the team's sprints and work besides the protocol team to articulate software releases of the SDKs and internal testing versions of the applications..
A summary of the projects I worked on can be found in my developer portfolio
Techonologies: SwiftUI, Swift, UIKit, Rust, C, Zcash, Bitcoin, Kotlin, GoLang, Python, CI (GH Actions, Bitrise)
Methodologies: TDD, Scrum
Jul 2019 - Mar 2021 (1 year 9 months)
This was a Freelance developer per-hour kind consultant role.
Nov 2018 - Jun 2019 (8 months)
Worked as iOS Sr. developer for the HighSide iOS App, taking over the existing codebase and doing general maintenance and bootstrapping CI infrastructure to automate builds and delivery through testflight.
Technologies: UIKit, Swift, Objective-C, Core Data, Circle CI, Ruby.
Jul 2016 - Nov 2018 (2 years 5 months)
Worked as a Lead Developer for the Flighs, Hotels and Packages Shopping Cart section of the Despegar and Decolar iOS App. Managed a team of 4 developers which was part of the around 30 incredible iOS developers in total that worked on the different areas of the application. Despegar and Decolar were featured repeatedly in the App Store for their popularity, excellence and designs. The team leads were in charge of release management, product development, sprint planning, mentoring and also feature development.
Depegar managed the whole Hotels and flights business end-to-end so it was a great opportunity to work in a fast-paced environment, where product developement, KPIs, UX metrics shaped the upcoming changes of the mobile applications used by millions of users in LATAM.
Technologies: iOS, Swift, Objective-C, UIKit, BuddyBuild, Jenkins, Ruby, Java.
Methodologies: TDD, Scrum, A/B Testing.
Apr 2013 - Jul 2016 (3 years 4 months)
I started as a part-time Sr iOS developer and grew to lead team of 11 developers who worked both on-site and off-shore and different skills (iOS, Android, WebUI and UX/VD). I mostly worked in a staff augmentation profect for a very important global Investment Firm, developing in-house solutions for the different departments of the company. We had high security standards and all applications were subject to thorough QA and penetration testing and the mandatory audits.
As a Tech Lead, I was collaborated with the Sales Team in RFPs and RFI proposals for Globant's potencial customers
Technologies: iOS, Objective-C, C, UIKit, Core Data, Jenkins, Jira, Sharepoint.
Methodologies: TDD, Scrum, OWASP mobile security.
Sep 2012 - Oct 2014 (2 years 2 months)
Partnered with Illustrators, comic book and children's literature authors and storytellers from all over the world to help them publish their creations on the Apple App Store.
They created great literature, we took care of the rest.
I Also developed the Backend using Ruby-on-Rails.
Technologies: iOS, Objective-C, C, UIKit, Core Data, Fastlane, StoreKit, Ruby, Rails, Amazon EC2 and S3.
Nov 2010 - Jan 2012 (1 year 3 months)
I was the Lead developer of GS MAG pdf reader engine. I created a very efficient iOS PDF Reader App that the company white-labeled to sell to different publishers. This was the pre-Newsstand era, where different publishers needed to launch their own apps to be present in the App Store.
The application allowed to bundle a free issue of the collection and then buy the rest through app store in-app purchases. PDFs could be annotated by content producers to inline media and other interactive elements to create an immersive experience with existing issues from traditional printed magazines. The PDFs were really high-resolution and I had to work with Core Foundation to get the most of iPad 1 and achive a smooth experience.
Technologies: iOS, Objective-C, C, UIKit, Core Data, Core Foundation, Adobe PDF, StoreKit.
Feb 2008 - Dec 2008 (11 months)
I started as a Jr developer in the Jave ME retroporting team. My job consisted in getting a Game port request from the game producer and a deadline for it. We were given the target devices (low-end not-smart phones) and a source code to depart from. We had to an iterative waterfall process where the game would be ported, bugfixed, tested, approved for gold and released to the public.
This was one of the best learning experiences a Junior dev could have in terms of practical knowledge. In a regular day one would have to jump into a unknown codebase, with custom build systems, different technologies, informal game engines and accommodate it so the game would pass the thorough QA criteria from the Quality department.
Techonologies: Java ME, C, Microsoft Batch, Python, SVN. Methodologies: Iterative Waterfall.
I graduated with grade 10/10 in the Master's degree in Software Engineering program at Faculty of Informatics of UNLP.
Thesis: "Arquitectura de software en wallet de código abierto para privacy coin en dispositivos móviles. El caso de estudio de Zcash"
(Open Source privacy coin wallet software architecture for mobile devices, the Zcash case study)
Link: https://doi.org/10.35537/10915/137845 (in Spanish)
Read Abstract
Since their appearance in 2009, the use of cryptocurrencies has been growing constantly in terms of market cap and adoption. This boom is publicly visible as well as the grand majority of the decentralized finance transactions. Despite the use of advanced cryptography, privacy in the “crypto world” is relitvely low, with certain exceptions: Privacy Coins (or Anonymity Enhanced Coins AEC). This work takes the idea of Privacy as a Human Right and focuses on elicitating the requirements for developing mobile wallets for AECs, analyzing the cryptocurrencies Monero and primarily Zcash, taking the latter as study case. Its contributions are: a list of functional and non-functional requirements to develop a privacy coin light client, a reference Architecture that addresses these requirements in an abstract manner and finally a list of future work related to the fields of Systematic Literature Review, Privacy and Security.
Bachelor's degree in Informatics from the Faculty of Engineering of Univerity of Palermo, Buenos Aires.
Jul 2016 - Jul 2018 (2 years 1 month) Part-time support and administrative work at the research Lab.
Faculty of Informatics - Universidad Nacional de La Plata
March 2023 - ongoing
We created one of the first Blockchain courses to be taught in a public National Univerity. The course covers topics like Bitcoin, Ethereum, Privacy, Consensus, Wallets and Smart Contracts.
Faculty of Informatics - Instituto Tecnológico de Buenos Aires
Mar 2012 - Mar 2018 (6 years 1 month)
Assist students by answering questions regarding the course topics. Design Special Assignments, grading exams, office hours.
Jun 2013 - Jun 2016 (3 years 1 month)
I co-founded and was Vice director of the Computational Intelligence and Information Systems Labs. We had several research projects in AI, ML, Soft computing, Image processing and Gaming.
I stepped down to take support responsibilities and attend other personal projects. Today the Lab is still delivering cutting-edge R&D.
Universidad de La Matanza
Mar 2015 - Dec 2015 (10 months)
Professor at the Digital TV and new platforms Graduate Program. (Programa en TV Digital y Nuevas Plataformas)
Course: Interactivity, return channels, Application Development. (Interactividad. Canales de Retorno. Funcionamiento y Aplicaciones)
Universidad de Palermo
Mar 2012 - Nov 2012 (9 months)
Cover class topics regarding OOP Design Patterns, assist the students. Design the course assignments
Universidad de Palermo
Jul 2010 - Jun 2013 (3 years)
Lead and Coordinate three Soft computing research projects: SIR (Real-Time Case-Base Reasoning system for reusable robots) and JAZZ (Opinon Mining) and GDARIM (Web Mining)
Universidad de Palermo
Mar 2009 - Jun 2013 (4 years 4 months)
Research and development of new technologies related to Soft computing techniques
Universidad de Palermo
Mar 2009 - Jun 2013 (4 years 4 months)
Assistant Professor of Introduction to structured programming in C
Universidad de Palermo Aug 2007 - Jun 2013 (5 years 11 months)
Lecture classes on basic data structures such as Arrays, Lists, Trees, Abstract Data Types. Designed assignments and graded exams.