I was the Senior Software Engineer at Vidaloop, Inc. working on VotingApp. I worked on the following:

- Lead developer for VotingApp for Android—a native mobile voting application written in Kotlin—utilizing Kotlin Multiplatform for shared business logic across iOS and Android and integrated with enterprise blockchain technology (Hyperledger Sawtooth by Intel).
- Developed an Android security SDK for detecting root cloaking, malicious binaries, code injection frameworks, and various security threats to meet OWASP security verification standards and VVSG 2.0 requirements.
- Developed a custom mobile accessibility service utilizing text-to-speech engines, screen blackout, sip and puff device support, D-PAD navigation, contrast and text-size variations; additionally supporting Android’s native accessibility services such as Google TalkBack and Select to Speak.
- Developed a JVM library for implementing end-to-end encryption, digital signatures, certificate verification and other security and integrity related functions.
- Designed and developed cross-platform content delivery APIs for dynamic textual content changes and localization.
- Developed a QR-Code scanner utilizing Google ML Kit, AndroidX Jetpack Compose CameraX APIs, and ZXing.
- Researched and created proof-of-concepts for cross-platform technologies.
- Participated in the hiring, on-boarding, and training process.


Vote securely from your smartphone using VotingApp. VotingApp is more convenient and accessible, but just as safe and private as voting in-person at the polls. With VotingApp, Elections can finally be:


The source code and internal processes will be made available for review. This means independent code, security, and accessibility tests are not only conducted but encouraged.

Observers can view all election activity remotely from initial election setup, to voting, to tally operations, through election certification. Individual voter information is not revealed and submitted votes are encrypted until live voting has ended.


VotingApp provides End-to-End Verifiability, giving voters the ability to verify that their vote is:

  • Cast as Intended: Their votes accurately reflect their selections.
  • Recorded as Cast: There stored vote is the same as their cast vote.
  • Tallied as Recorded: Their stored vote is properly counted.


VotingApp provides the highest level of security and voter verification available. A voter authenticates using a unique set of credentials selected by the jurisdiction, combined with their device’s biometric capabilities.

To complete authentication the voter uses a physical token provided by the jurisdiction. A voter does not have access to their ballot and cannot submit a vote until all authentication steps are complete.

With VotingApp, the election is:

  • Immutable (Unchangeable)
  • Reviewable in real-time
  • Accessible to all observers
  • Verifiable by all

Remote observation of the election allows you to create a safe and secure environment for your workers without compromising public confidence in the election.


Voters can vote remotely, accessibly and securely using VotingApp on their iOS or Android phones and tablets.

Voters with disabilities can vote using the native iOS and Android accessibility tools and screen readers, or they can use VotingApp’s enhanced accessible capabilities including:

  • text resizing,
  • contrast rates,
  • and our built-in multilingual audio ballot.

VotingApp is also tested to work with a variety of external accessibility devices such as sip and puff devices and refreshable braille displays.

Voters submit their ballot remotely without having to worry about mail deadlines or the inaccessibility of printing and signing paper returns.


Optimal for piloting, VotingApp works with your existing Election Management System—this means that you can import your existing election information into our intuitive Admin Portal, or you can create an election from scratch.

Voter Information can also be imported from your existing Voter Registration Database. You can add your entire voting population to the Admin Portal or simply limit it to a certain group of voters (such as UOCAVA voters).

Once the election is finished, the information gets decrypted and you can tally the votes and create reports using our Admin Portal, or you can print out marked ballots which can be scanned into your existing Election Management System.

Promotional Videos

Why we need VotingApp

VotingApp Demo — The Future of Voting

Learn More

For more detailed information on VotingApp, for access to the whitepapers or if you would like to pilot, visit the website.