Posts

  • Why authorization architecture is probably fragile

    We initially built our own authorization system in PostgreSQL, but as requirements grew more complex, we had to evolve toward a relation-based authorization service. We chose SpiceDB to handle advanced use cases like organizational hierarchies and temporary access. However, while solving many technical challenges, it also opened up new security risks, particularly around ensuring consistent and reliable enforcement of authorization decisions across applications.
  • iOS Privacy: How we tricked our users into trusting us with their bank accounts

    Back in 2019, we founded a startup (Dayra) to be the Cash App of Egypt. Allowing users to connect their bank accounts, transfer money and see an overview of their spending.