Lead Engineer, Server

Delhi / Bangalore
Engineering
Full-time

Hike’s mission is to reimagine messaging as 1 billion people come online on mobile devices that are faster and more powerful than the first set of PC's. It is our belief that messaging will do to mobile what browser did to desktop, only 100 times over. Hike today has over 100 million users and monthly messaging volume of 40 billion and is amongst the top 5 most used services in India.
 
Job Description
 
As a Lead Engineer - Server, you architect, develop and support some of the very visible internet-scale features and infrastructure at Hike. You are the technical lead for our most complex, cross functional projects. Your work influences how Hike scales and has a deep impact across the organization. Your work would span multiple areas such as information retrieval, large-scale system design, networking, security, data compression, user interface design, etc. You work at scale and speed.
 
ESSENTIAL DUTIES & RESPONSIBILITIES 
.  You develop features that solve customers’ problems.
.  You conceptualize, propose and sell new ideas, strategies and products in engineering based on market considerations and systems architecture, and finally guide implementation to a final product.
.  You define and enforce broad, company-wide technical standards.
.  You lead design reviews for complex systems.
.  You act as a primary decision maker in evaluating new cross-group external technologies for Hike.
.  You manage the most complex projects, with significant bottom-line impact.
.  You deliver on short-term and long-term targets.
.  You initiate projects for the team or approve proposed projects from teams.
.  You oversee the planning process and delegate across teams and or/ departments.
 
KNOWLEDGE, SKILLS & ABILITIES 
.  8+ years of relevant work experience.
.  Strong skills in application and server-side development.
.  Proven experience in ownership and delivery of a sizeable product or core product components.
.  Experience in designing and building high-volume systems.
.  Strong software engineering fundamentals, including data structures, design patterns, testing and debugging skills.
.  Experience in building and maintaining distributed low latency, highly scalable systems in production environment.
.  Experience in RPC based systems and designing elegant REST APIs.
.  Comfortable with databases (relational and NoSQL) and know-how of their performances.
.  Strong understanding of memory management, file I/O, network and socket programming, concurrency and multi-threading, and Async Programming. Experience in messaging such as JMS, ZeroMQ, RabbitMQ, Kafka.
.  Experience with caching architectures with Redis, Memcache etc.