Senior Software Engineer
Intuit is betting on leveraging Machine Learning and AI to power prosperity for millions. The crucial foundational component for a large Machine Learning enterprise is a robust platform. Join the Machine Learning Platform team so you can be a part of this journey!
The ML Platform team at Intuit is building a next gen platform that "just works", and seamlessly enables our data scientists and analysts to develop and operationalize ML models - at scale and at speed.
Along the way, you will encounter some of the hardest problems in distributed big data based ML systems. You will also be using innovative, open source technologies and adapt them to work in solving these problems. As a contributor to open source projects, you will also have the opportunity to take your innovations to the world.
- Build components of the next generation Machine Learning Platform for Intuit
- Apply a systematic approach to the development, delivery, maintenance, and operation of our software services and offerings
- Collaborate with others across the business to understand our customers' needs and develop solutions for important problems
- Design and implement solutions that meet business, functional and nonfunctional requirements, and standards
- Own the outcome - we continuously strive for: best products, best platform, best analyses and best company in the industry
- Bachelor's Degree with 8+ years software engineering experience or Master's Degree with 3+ years' experience
- 5+ years in Java programming with expert knowledge of concurrency in Java, Java security APIs and features, and Java performance
- 3+ years of experience implementing large scale, distributed, high availability, fault-tolerant systems and infrastructure in a production environment
- Strong computer science fundamentals, data structures, and algorithms
- Experience in multiple languages is desirable - Java, Python, Go etc.
- Expert in Java language features, Object Oriented Programming, Design Patterns
- Experience in multi-threaded and concurrency programming: deadlock, starvation, thread allocation, thread safety, concurrency design patterns
- Excellent problem solving skills, can triage and resolve critical tech issues without supervision
- High standards for development quality, especially on unit testing, TDD / BDT, and automated testing
- Startup experience - a plus
- Big data knowledge - a plus
- Open source contribution - a plus
- Creativity - ability to turn problems and solutions on their head and come up with better designs, better technical solutions, and better products. Think out of the box.
- Diligence - work with a focus on quality solutions
- Hunger and eagerness to learn new concepts, new technologies, and be exposed to / adopt new ideas
Back to top