Software Engineer - Java
FanDuel is a premier US-based gaming destination, offering daily fantasy sports, sports betting, and online casino games. Founded in 2009 to innovate the fantasy sports industry, it has become a leading mobile sports betting operator, allowing users to bet on sports, play online games, and build fantasy teams across a wide array of professional sports leagues.
Funding history
Projects
About FanDuel
FanDuel is the premier gaming destination and #1 Sportsbook in the United States. What started as a backyard brainstorm in Texas in 2009 has grown into a major force in the gaming industry. The company revolutionized fantasy sports by simplifying the season-long game into daily contests, allowing fans to compete and win daily. Today, with over 12 million registered users, FanDuel offers a wide range of products including sports betting on leagues like the NFL, NBA, MLB, and NHL; an online casino with blackjack, slots, and live dealer games; daily fantasy sports for various sports like football, baseball, and basketball; and horse racing betting for major events. Additionally, FanDuel provides content through FanDuel TV and insights via FanDuel Research, making every moment of the game more engaging for its users.
Skills
Candidate Availability
Required and preferred rules are kept separate and reflect the wording in the original posting.
About the Role
You will build scalable, fault-tolerant backend systems and APIs using Java for responsible gaming products. You will design and implement software components, write and test maintainable code, participate in technical discussions and code reviews, document software, troubleshoot defects, and support customer needs.
Requirements
- BA/BS degree in Computer Science or a related software engineering field or equivalent practical experience
- 2+ years of relevant work experience
- Java
- Scalable backend systems and APIs
- Fault tolerance
- High availability
- Relational databases
- Non-relational databases
- Messaging queues
- Concurrency
- Modern architectures
- Design patterns
- API and service release processes
- Cloud infrastructure
- AWS
- Testing concepts and tools
- Agile
Responsibilities
- Solve technical problems using appropriate technologies
- Create and improve tools or applications
- Turn defined designs into code and deliver them on schedule
- Write secure, stable, testable, and maintainable code
- Apply data structures and algorithms appropriately
- Make implementation trade-off decisions
- Participate in design, scoping, and prioritization discussions
- Design software components for well-scoped scenarios
- Conduct code reviews
- Refactor software when appropriate
- Document software
- Troubleshoot and resolve defects
- Provide customer support
Benefits
- Insurance
- Paid leave
- Mentorship
- Professional development resources
