Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Building a credit card issuer in Brazil using Clojure and Datomic (2014) [video] (youtube.com)
132 points by espeed on Nov 28, 2015 | hide | past | favorite | 20 comments


Disclaimer: I work at Nubank, nice to see it posted here. This video is now one year old and it's nice to see how the technology choices at the start are still paying dividends.

Datomic in particular is a pretty smart product backed by solid concepts (RDFs/triplestores, event sourcing, immutability, querying engine on the client side, datalog), something companies end up re-inventing in-house further down the line, so it's nice to be aware of the architecture even if not intending to use it.


I'm brazilian and have been working with Clojure for a few years and used Datomic on a project earlier this year. Are you planning on hiring? Sorry for the thread hijack.


Cool! We are always hiring - you can see current open positions here: https://nubank.workable.com/


I didn't watch the video yet, what DB backend does Nubank uses for Datomic?


"Datomic’s support for multiple storage backends has also been useful to Nubank, as personally identifying information (PII) must be encrypted at rest, something that is easily achieved using Amazon’s PostgreSQL (RDS) with EBS volume encryption for some services, while using DynamoDB to back other, non-PII services."


Been using NuBank for about 8 months and I must say, it is the best bank experience I've ever had. They put great effort into every aspect of their business. From the mobile app to the customer experience, it's perfect! (Now that I've promoted you please raise my limit amount - haha jk)


Is it about more than than a web frontend?

Also: 47 upvotes before my (first) comment is.. weird. Content spam?


Up votes on content without comments aren't unusual if the reader likes the link or wants more people to see it. Could be spam, of course :)


Also with 40 min videos some people feel they should watch the thing before commenting which delays stuff.


Interesting video and concepts with Datomic, but a few questions.

* Why did Nubank decide to attack the Brazil market instead of US? There have been attempts here in the US; Simple (https://www.simple.com), Standard Treasury (http://standardtreasury.com/), Final (https://getfinal.com/), and Coin (https://onlycoin.com/).

* Isn't reinventing the engineering wheel; in terms of Datomic and a not popular language like Clojure a potential huge distraction to the ultimate goal of building a bank? The problem space is big and hard enough without rolling/maintaining/testing your own database engine and obscure language framework.


I'll try to address:

* Perhaps surprising, but Brazil is an interesting market. We have a connected young generation and most industries' current players are bad.

* I would argue it's about avoiding reinventing the wheel. Datomic gives you easy scale-out and auditing, and Clojure gives you a flexible, pragmatic functional language with good async/threading primitives running on stablished platforms (JVM and web browsers). I guess going off the beaten path is not necessarily more work if you're taking a shortcut.


Datomic seemed like an amazing choice for banks to me.


they are a credit card issuer ( mastercard brand ). not a bank.


Ok, we s/bank/credit card issuer/'d the title.


Datomic sounds really awsome, I'm wondering which other dbms' can it be related to? (assuming there is nothing new under the sun :) )


I'm not aware of any, although I'm not sure Datomic qualifies as a traditional DBMS. It's more like a querying API + a master process (transactor) backed by a traditional store/DB (Postgres, Dynamo, etc), so you can achieve the same by putting some existing solutions together, but it's implementing a bit more than a DBMS alone.


This is not a bank and you know it.


Why would you use a slow un-benchmarkable database? There are plenty of good DBs out there for this job.


I don't know any other db that lets you put arbitrary constraints in transactions and run queries as if you were in the past.


LogicBlox.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: