Why is software engineering important for Nubank?
Nubank is a technology company and software engineers form the bulk of our team. Our software team invents new features for our customers, as well as advanced analytics and machine learning models to continuously improve decision-making and streamline processes.
What are some examples of problems a software engineer will solve?
Shipping valuable features requires close coordination between DevOps, database, API, frontend, and mobile workstreams; Nubank engineers commonly pair and rotate focus between these responsibilities. We consistently work with new technologies, and thus value professionals who are open to learning new things, regardless of pre-existing comfort zones. You might solve any of the following problems:
- Build backend microservices in functional programming languages, such as Clojure and Scala
- Integrate 3rd party services and data pipelines to drive underwriting decisions
- Craft interactive visualizations for live streaming data sets
- Implement budgeting tools to help customers better understand their spending
- Triage bugs and exceptions reported in production
- Build intelligent monitors for key customer experiences and risk-relevant events
- Automate daily accounting and financial statements for the company
- Measure and optimize API performance
- Conduct system load / stress tests
What is a typical day for a software engineer?
Our teams work using agile frameworks to deliver great solutions for our customers. We emphasize pairing, controlling work-in-progress, and try to adapt our team structures and processes to suit the particular working styles of the engineers within those teams. Our working environment is open and diverse, and our offices have a broad mix of collaborative working spaces, quiet areas, leisures space, and workstations. Overall, we want our engineers to be comfortable at work: we don’t have a dress code and you can work wearing shorts and flip-flops. We also have a pet-friendly office; you may bring your furry friend to work.q
You will fit well if
- You are driven and enjoy shipping new features
- You are hungry and enjoy being constantly challenged to learn and do more
- You embrace conflict of ideas and like to question the status quo
- You learn quickly and easily adapt to changing situations and priorities
- You believe in building phenomenal products and doing great work by international standards
- You want to understand the big picture, to be held accountable and make a meaningful contribution with your work
We are excited to meet experienced coders as well as college seniors with various areas of technical focus - there is no single ideal profile. We all wear different hats and cannot be experts in everything at once.
You will have a meaningful chance to shape our architecture, processes, and culture while working with state-of-the-art technologies. We believe in good team chemistry, enthusiasm for building things, and the capacity to learn new things when we stay humble and open-minded. An engineering or computer science undergraduate degree and English language skills are helpful.
- If you had any experience or are interested in functional programming
- Service oriented architecture
- Messaging (like Kafka, RabbitMQ, Resque or Sidekiq)
- JVM experience (Java, Scala, JRuby or Clojure)
- SQL / NoSQL databases (like Datomic, Redis, PostgreSQL or MySQL)
- Automated unit / functional / integration testing
- Infrastructure as code (e.g., Docker, Chef, Puppet, Ansible, Kubernetes)
- Modern web frameworks (like Ring, Django, Rails, Sinatra or Express)
- Amazon Web Services
- Competitive compensation package, including opportunity to earn equity ownership in Nubank
- Health, dental and life insurance
- Meal allowance (“vale refeição”)
- Flexibility to choose your own custom setup (computer, monitors, OS etc.)