Engineering at Nubank
We strive for state-of-the-art software development practices, that currently includes a variety of technologies. While we value candidates that are familiar with them, we are also confident that software engineers who are interested in joining Nubank will be able to learn from our team.
- Horizontally scalable microservices written mostly in Clojure, using Finagle and leveraging upon functional programming techniques and hexagonal architecture
- High throughput jobs and inter-service communication using Kafka
- Continuous Integration and Deployment into AWS
- Storing data in Datomic and DynamoDB
- Monitoring and observability with Prometheus
- Running as much as possible in Kubernetes
We are a process-light organization that values human interactions. We value working in small, independent teams that feel like small startups within the company, and eschew coupling and centralizing where realistic. We understand that execution is the key to success and optimize processes to remove bottlenecks.
You can read more about it in our blog and get some insights into how we work.
As a Software Engineer, you’re expected to:
- Work with large scale distributed systems, understanding their broad architecture
- Plan and execute on entire features, collaborating with peers while planning the work ahead, and seeing it through
- Collaborate with building microservices and work with continuous delivery and infrastructure as code
- Work with agile software development methodologies
- Write, test, instrument, document, and maintain code
- Pair, and participate in code reviews, to grow and contribute to the growth of others in and around the team
- Collaborate closely with Product, Design, and partner Engineering teams to build new experiences
- Participate in on-call rotations for your team and respond to incidents as necessary
- Work focused on backend applications, and be open to contribute to mobile and frontend development, according to business needs
What are we looking for?
- Work with large scale distributed systems
- Proven track experience building digital products
- Ability to quickly understand technical and business requirements, translating them into technical design and implementation
- A problem-solver who is able to communicate effectively across functional teams
- A software engineer who cares deeply about user experience and likes to take part in hiring, onboarding, mentoring, and training
- Proven understanding of object-oriented or functional programming language
- Notions of distributed systems
- Familiarity with cloud technologies
- Collaborate with building microservices
- Have worked in teams defining asynchronous integrations using event-driven architectures
- Have practical knowledge of agile software development methodologies
- Work with continuous delivery and infrastructure as code
- Experience with cloud technologies
Our Benefits
- Chance of earning equity at Nubank
- Extended maternity and paternity leaves
- Health and life insurance
- NuCare - Our mental health and wellness assistance program
- Nucleo - Our learning platform of courses
- NuLanguage - Our language learning program
- Holiday Bonus ("Aguinaldo") of 30 days of pay per year
- 17 days of paid vacation with 25% vacation bonus
- Gym partnership