Responsibilities
- Design, write and deliver highly scalable, reliable and fault tolerant systems with
minimal guidance.
- Participate in code and design reviews to maintain our high development standards
- Partner with the product management team to define and execute the feature roadmap
- Translate business requirements into scalable and extensible design
- Proactively manage stakeholder communication related to deliverables, risks,
changes and dependencies
- Coordinate with cross functional teams (Mobile, DevOps, Data, UX, QA etc.) on
planning and execution
- Continuously improve code quality, product execution, and customer delight
- Willingness to learn new languages and methodologies
- An enormous sense of ownership
- Engage in service capacity and demand planning, software performance analysis,
tuning and optimization
Education
- Degree in Computer Science or equivalent with 5+ years of experience in
commercial software development in large distributed systems
Experience
- Hands-on experience in designing, developing, testing and deploying applications
on Golang, Ruby,Python, .Net Core or Java for large scale applications
- Deep knowledge of Linux as a production environment
- Strong knowledge of data structures, algorithms, distributed systems, and
asynchronous architectures
- Expert in at least 1 of the following languages: Golang, Python, Ruby, Java, C, C++
- Proficient in OOP, including design patterns.
- Ability to design and implement low latency RESTful services
- Hands-on coder who has built backend services that handle high volume traffic.
- Strong understanding of system performance and scaling
- Possess excellent communication, sharp analytical abilities with proven design
skills, able to think critically of the current system in terms of growth and stability
- Data modeling experience in both Relational and NoSQL databases
- Continuously refactor applications to ensure high-quality design
- Ability to plan, prioritize, estimate and execute releases with good degree of predictability
- Ability to scope, review and refine user stories for technical completeness and to
alleviate dependency risks
- Passion for learning new things, solving challenging problems
- Ability to get stuff done!
Nice to have
- Familiarity with Golang ecosystem
- Familiarity with running web services at scale; understanding of systems internals
and networking are a plus
- Be familiar with HTTP/HTTPS communication protocols.
Abilities and Traits
- Ability to work under pressure and meet deadlines
- Ability to provide exceptional attention to details of the product.
- Ability to focus for extended periods of repetitious activity.
- Ability to think ahead and anticipate problems, issues and solutions
- Work well as a team player and help the team members to resolve issues
- Be committed to quality and be structured in approach
- Excellent and demonstrable concept formulation, logical and analytical skills
- Excellent planning, organizational, and prioritization skills