Senior Software Engineer
Twine is a mobile data platform that works with app publishers who generate mobile data and the apps, agencies, brands, and ad tech companies who need that data for mobile ad targeting. We provide app publishers with a platform to safely generate user insights and an incremental revenue stream while delivering mobile marketers high quality mobile data that boosts campaign ROI.
We are experiencing great momentum and are ready to expand our team. Our Senior Software Engineer will be the next addition to our engineering staff in Los Angeles and will report directly to the CTO.
As a member of the core engineering team you will be responsible for designing and developing scalable high-performance applications for processing, transforming, and analyzing large volumes of data generated by mobile applications, including: location, identity, and audience data. You will be involved in building infrastructure and application components that will take Twine’s technology to the next level, applying cutting-edge technology to build world-class Big Data processing algorithms. You will develop domain expertise in mobile data and generate key insights that will influence business decisions and technological solutions.
As an early member of the engineering team you will be well positioned to become a key member of our engineering organization and will be able to make significant contributions and shape development of our technology.
- Development of complex multithreaded Java applications for processing large volumes of data.
- Working with Amazon Web Services, “NoSQL” as well as relational databases.
- Development and support of back-end mobile data processing SDKs, and RESTful APIs.
- Design and development of applications from scratch, taking them through all stages of the software development lifecycle: design, implementation, testing, deployment, as well as production support.
- Design, development, and support of a large and dynamic set of big data processing pipelines, dealing with excess of 200GB of mobile data per day.
- Assisting junior developers and data services engineers with their tasks, including helping with coding, design, and code reviews, development of reports, and data analysis.
MINIMUM 5 YEARS OF SERVER-SIDE SOFTWARE DEVELOPMENT EXPERIENCE REQUIRED.
- Ability to develop software independently based on high-level requirements.
- Ability to work independently in a fast-moving high-growth environment with frequently changing priorities.
- Solid understanding of data structures, core computer science concepts and algorithms, Big-O notation, ACID.
- Networking. Understanding of HTTP protocol, cookies, methods, HTTPS.
- Experience with RESTful APIs, both developing server-side implementation, and using from the client side.
- Mobile app development experience is a BIG plus.
- Experience working with (large) structured data sets, data analysis.
- You will be required to interact with business development team, product managers, account managers, and other product stakeholders in order to execute based on high-level written or verbal requirements.
- Java. Multithreading. JDBC, NoSQL DB drivers.
- Python is a plus.
- Ability and willingness to understand, learn, and use new programming languages quickly.
- Must be familiar with Linux shell, at least basic shell scripting.
- Understanding of object-oriented programming principles.
- Ability to apply OOP when designing complex highly concurrent software.
Amazon Web Services
- EC2, Redshift, Data Pipeline, S3
- NoSQL: Amazon Redshift, Mongo. MySQL or similar.
- Working experience with SQL. Joins, aggregations, nested queries, etc.
To apply for this role, send us an email with your resume and a cover letter. We look forward to hearing from you!Apply For This Job