Job Description / Skills Required
Build the best:
Would you enjoy working on one of the biggest and fastest ad-engines in the marketplace?
We are already serving audiences in the hundreds of millions and processing tens of billions of requests per month, and as the demand for our services is expected to multiply, you will be challenged with: scaling accordingly, developing new components, and seamless implementations allowing for zero downtime. (You code with the confidence, speed, and steadiness of a world class surgeon!)
You will be responsible for the lifeblood of the YuMe platform, and have the opportunity to be a superhero in the world of high-volume, real-time, open-source systems.
Distill business requirements into design specifications
Conceptualize software requirements based on both external and internal inputs
Develop innovative algorithms to place a correct ad in front of the viewer.
Design, enhance and implement scalable, reliable, and maintainable technologies for our advertising platform
Build robust, high-volume production software of server components for YuMe’s ad service platform
Ensure that our product is carrier grade in terms of reliability, scalability and performance
Work closely with geographically distributed engineering teams in US and Chennai
Lead efforts in capacity planning
Work closely with the testing team to design intelligent testing strategies
Apply and tailor best practices in software processes and quality to achieve fast cycle time development
Enforce code quality through test driven development.
A Typical work day of an Ad serving Engineer
Work closely with PM Team to understand & analyze requirements
Create design documentation & review the same with the team
Collaborate with teams across geographies to finalize design documents
Create low level design & test case for the module/feature
Write code & work with version management tools
Own a feature/module
Should write & execute unit test cases
Should write & execute functional, integration test cases
Should write test cases for existing features (If required)
Should contribute in code review & improve guideline documents
Should analyze & fix issues found post development
Actively contribute in supporting product on need basis
Participate in design review of other features
Should capture data & events to meet the reporting & analytical requirements
Needs to update & embrace self on latest happenings in the domain as well as the relevant technologies
Strong working knowledge of distributed systems technology; Web based technologies, Application Servers, application and database performance tuning approaches and tools.
Experience with Netty, Jetty, JS is a must have, asynchronous TCP/IP or expertise on NIO programming will be an added key
Must be skilled with software development tools such as Java, Eclipse, Ant, JUnit, CVS, and shell scripting.
In depth expertise in Linux, Apache, Tomcat, MySQL technologies is mandatory.
Experience with Hadoop, Messaging frameworks like Active MQ, and other scalable technologies used in on-line advertising is required.
Expertise in Big Data computing technologies like Map Reduce, HBASE, HIVE is a plus
Experience in writing multi-threaded programming
Strong empathy for users and customers
Strong technical documentation & presentation skills.
Hands-on experience in designing and developing software for a high transaction volume, High availability environment with a stringent response time SLA is mandatory.
Prior work experience in online advertising or media industry is a mandatory
Prior experience developing software for Ad Serving solutions a plus
Expertise in complex data structures and data design is a must
Strong knowledge of data structure, modeling, replication & distributed data/object relational database mapping
Ability to solve complex problems with simple solutions
Education and Years of Experience
BS/MS in Computer Science or related field required, MS Preferred
8-10+ years of software development in Java/J2EE using various Open Source Technologies
7 plus years of software coding and system design using Java/J2EE, XML, SOAP, Web Services