Senior Java Software Engineer
Looking for a unique opportunity to show off your skills at a cool and exciting company? Digital Turbine is looking for an experienced Senior Java Software Engineer to be part of our team. This role is offering an opportunity to work on scalable distributed applications built using cutting edge technologies and services. The Senior Java Software Engineer position requires a proven ability to understand and implement business requirements for new systems and enhancements to existing systems in an Agile/Scrum environment. Additionally, the idea candidate must exhibit the ability to analyze and debug new and existing software systems.
Key responsibilities for the Senior Java Software Engineer:
- Collaborate with cross-functional teams to conceptualize, build, test and ship software solutions that meet business and market needs.
- Maintain existing software systems and push mobile technologies to the limits to help better our products and services.
- Work with geographically dispersed team members and implement scalable and cost-effective software systems that meet business requirements.
- Develop high quality software using industry standard best practices including unit testing, code reviews and continuous integration.
Minimum job requirements for the Senior Java Software Engineer:
- BS or MS in Computer Science or equivalent work experience.
- 7+ years of software development experience preferably with a JVM based language (Java, Scala, Clojure).
- Well versed developing commercial, enterprise scale software and with tools such as Git, Subversion or other SCM tools.
- Experience with remote data via REST and JSON and developing cloud-based software (AWS, Azure, GCP).
- Strong understanding of query languages and tradeoffs between relational and non-relational systems.
- Working knowledge of key data structures and algorithms (indexing, hash tables, joins, aggregation).
- Solid understanding of software development best practices, methodologies and previous work in a team-oriented, collaborative environment.
- Excellent communication and collaborative problem-solving skills.
- Can lead by example & motivate fellow developers to meet challenging goals.
Preferred Experience for the Senior Java Software Engineer
- Experience with Spring Boot, Hibernate frameworks and with distributed data handling and storage technologies like Hadoop, Apache Kafka, Confluent, Apache Flume, Amazon S3, Avro.
- Experience with Java EE Application Server experience (Tomcat, JBoss, GlassFish).
- Previous work with Kubernetes, container platforms such as Docker or exposure to infrastructure management technologies like Puppet or Chef utilized in a cloud-based environment like AWS.
- Experienced in data stream processing frameworks like Apache Storm, Apache Samza or Apache Spark.
- Experience with behavior or keyword driven automation testing frameworks such as Cucumber or Robot Framework and work with test coverage and testing automation.
- Knowledge and applicable experience with Agile methodologies such as SCRUM.
- Good time management skills and structured work methodology.
- Experience with NoSQL datastores such as ElasticSearch, Aerospike, Redis, Cassandra.
- Experience with build tools like Maven, SBT or Gradle.
- Previous experience working in the mobile industry.
About Digital Turbine
At Digital Turbine, we believe there is better way for smartphone users to discover new apps and content. Our Mobile Delivery Platform makes it easier than ever for people to discover new apps frictionlessly, for operators and OEMs to build new revenue streams, and for advertisers reach users at scale. We are a global mobile technology company that is passionate about delivering the right content to the right person at the right time. Digital Turbine has delivered more than one billion app installs for hundreds of advertisers. More than 22 million smartphone users engage with Digital Turbine's software technology each month across more than 30 global operators and OEMs.
Reasons to Work for Digital Turbine:
- We’re a leader in an evolving industry – The mobile app business is booming and changing every day, which means that we are always adapting to stay ahead of the curve.
- Take an Opportunity to work with the industry’s top talent – Many of our employees have over a decade’s worth of experience in the mobile app space. We are a company of ‘A’ players and only look for the best people to join our team.
- We live our values – We regularly Laugh and applaud our Results with our Global partners.
- We’re a company that values diversity & inclusion. Everyone has a voice and can make their mark – Every employee has the opportunity to implement new processes, design new programs, and be creative within their unique role.
- High Growth—We’re growing quickly, which gives our employees exciting opportunities to take on new challenges and have a significant impact on the company’s future.
- Flexible work environment – Employees enjoy coming to work in jeans, working in an open environment, and lounging on couches with their laptop. We offer an unlimited vacation policy too! We work hard but respect our employee’s work/life balance and general well-being. Freedom is one of our values.
- Company Equity-- All employees are expected to make an impact, so everyone is granted stock options when they join the company.
- Equitable Compensation—we believe in every employee’s impact, giving every employee annual stock option awards, a bonus that is based on both individual and company performance and we pay a basic Living Wage.
- When we say global, we mean it—Digital Turbine has 6 physical locations around the world and employees in more than 10 countries.
- We fuel your “tank”—In addition to a great job with great people, our office kitchens are stocked with plenty of snacks and drinks to help get you through each day.
- Beer Fridays—Every Friday afternoon, the company breaks away from work to come together and unwind after a busy week. Enjoy coffee, tea, juices, soda and water anytime.