Are you interested in this opportunity? Click on Apply and your application will be submitted. If you know of someone else who might be interested, send this opportunity to a friend.
||Senior Software Development Engineer (Offline Systems)
||Our client is looking for a high caliber senior developer to code on strategic projects on our large scale offline systems used for BI and Machine Learning. Come be the technology expert on our extremely large scale offline services in this elite team! This is a direct placement position.
||The senior developer will play a critical role in driving the technical details of a variety of projects for extremely large scale offline systems spanning multiple areas (Paid Search, Display, Local, New Surfaces etc.). They will be working on petabyte scale data processing technologies that assist with information retrieval, machine learning and real-time understanding. They will have to understand the design, code and features of many different areas, quickly come up to speed and implement features that delight customers and partners via their intuitiveness, attention to detail, responsiveness and accuracy. They must be able to design and code features that efficiently process large datasets to make inferences and derivations using a range of techniques – simple formulas and clauses to rich feature computations based on complex algorithms. They should be able to influence other developers to come up with the right design and architecture for their components to meet the performance goals of these critical services and make them the model for common patterns going forward. They must have good partnership and influence skills to be able to work across multiple teams.
The candidate must have a proven track record of making sound technical recommendations and must be an extremely strong advocate for quality engineering principles. The candidate should have demonstrated leadership in influencing the architecture, engineering, and coding guidelines used by the team. The candidate must also have a proven track record of good design and writing lots of solid, bug free, high performance code. They must demonstrate good understanding of object oriented design, safe programming and test driven development. The candidate must also demonstrate good understanding of the online services space and must have some proven experience in the same. Good knowledge of real-time distributed systems architecture and technologies is a must.
||Experience in at least a couple of the following areas in data ingress/data processing side technologies is a must:
• ETL systems to integrate multiple data sources
• Batch processing systems to build indexes used by Leveraging Information Retrieval systems
• Batch processing systems to score and annotate data points for use in model used by ML systems
• MapReduce technologies and query languages to batch process large amounts of data
• Systems to perform batch or real-time analytics on large data sets
• 5+ year experience working as a software developer
• One of C#, C++ or Java
• One of SQL, Scope, LinQ, Hive, Pig, Jaql etc.
• Experience with Big Data systems like BigTable, Hadoop, Cosmos, Dremel, Kafka, Storm etc.
• Experience with Data Analysis and Mining systems (SSAS etc.)
• Experience with OOP, TDD and agile development models
• Understanding of building multi-tier, geo distributed online platforms
• Experience with data modeling of complex systems
• Strong partnership, communication and coordination skills
• Strong computational problem solving skills
• Bachelor’s degree or equivalent in Computer Science or related field required
Additional qualifications/experience preferred:
• .Net, WCF, WWF, ASP.Net MVC
• Experience building web services using ASP.NET (or similar technologies) and SDKs based on REST APIs
• Experience building OLTP systems using SQL. Must have a good understanding of SQL fundamentals, T-SQL, stored procs and optimizing database applications for high scale, low latency
• Experience with Windows Azure services
• Experience with Bing technology stack