Similar jobs
Staff Engineer :
Job Description
Egnyte is seeking an experienced Staff Software Engineer to join our Engineering department. The Engineering department builds large distributed components and services that run Egnyte's Cloud Platform. Our code serves billions of requests per day with sub-second latency in a fault-tolerant environment. We process and analyze millions of files and events daily. Some of the responsibilities for this department include Egnyte's Cloud File System, Content Classification, Content Lifecycle Management, User Behavior Analysis, Object Store, Metadata Stores, Search Systems, Recommendations Systems, Synchronization, and intelligent caching of multi-petabyte datasets. We are looking for candidates with a shared passion for building large-scale distributed systems and a keen sense for tackling complexities that come with scaling through multiple orders of magnitude.
In this role, you will (But are not limited to):
- Design and develop highly scalable and resilient cloud architecture that seamlessly integrates with on-premises systems
- Drive the team’s goals and technical direction to find and pursue technical opportunities that make Egnyte’s cloud platform more efficient
- Effectively communicate complex design and architecture details
- Understand company and industry-wide trends to help develop new technologies
- Conceptualize, develop, and implement changes that prevent key systems from becoming unreliable, under-utilized, or unsupported
- Own all aspects of critical software projects from design to implementation, QA, deployment, and monitoring
Qualifications
- BS, MS, or PhD. in Computer Science or related technical field, or equivalent practical experience
- 8-15 years of professional experience in engineering with a history of technical innovation
- Experience providing technical leadership to engineers
Bonus Qualifications (Good to Have)
- The breadth of knowledge across infrastructure domains, with the ability to reason about everything from data center machine software to database solutions to machine learning infrastructure to front-end web or mobile applications
- Demonstrated success in designing and developing large-scale, complex systems
- Expertise with multi-tenant, highly complex, cloud solutions; experience with Hybrid and/or on-premises solutions desired
About Egnyte
In a content critical age, Egnyte fuels business growth by enabling content-rich business processes, while also providing organizations with visibility and control over their content assets. Egnyte’s cloud-native content services platform leverages the industry’s leading content intelligence engine to deliver a simple, secure, and vendor-neutral foundation for managing enterprise content across business applications and storage repositories. More than 16,000 customers trust Egnyte to enhance employee productivity, automate data management, and reduce file-sharing cost and complexity. Investors include Google Ventures, Kleiner Perkins, Caufield & Byers, and Goldman Sachs. For more information, visit www.egnyte.com
Backend Developer responsible for managing back-end services and the interchange of data between the server and the users.
Your primary focus will be the development of all server side logic, definition and maintenance of the central database, and ensuring high performance and responsiveness to requests from the front-end.
We are looking to recruit a candidate for a role that will require:
- Create and consume restful APIs
- Design, develop, and maintain internal and external applications
- Build efficient, testable, and reusable modules
- Write high quality, structured application/interface code and documentation
- Identify solutions through research and collaboration that resolves the root of problems as they arise
- Define functional and technical requirements for application software to develop skills and knowledge
- Troubleshoot, test and maintain the core product software and databases to ensure strong optimization and functionality
- Contribute in all phases of the development lifecycle
Requirement
∙ Proficient in Node.JS
∙ 2+ years’ experience designing, querying, and updating databases in MySQL/nosql
∙ Passion for best design and coding practices and a desire to develop new bold ideas
∙ Good to have knowledge of AWS, Redis, ElasticSearch
Education: Min. Graduate in related discipline
Work experience: 2 years relevant experience
Compensation: Based on Industry Standards
Interview Mode : Face to Face
- You solve problems at their root, stepping back to understand the broader context.
- You develop pragmatic solutions and build flexible systems that balance engineering complexity and timely delivery, creating business impact.
- You understand a broad range of data structures and algorithms and apply them to deliver high-performing applications.
- You recognize and use design patterns to solve business problems.
- You understand how operating systems work, perform and scale.
- You continually align your work with Amazon’s business objectives and seek to deliver business value.
- You collaborate to ensure that decisions are based on the merit of the proposal, not the proposer.
- You proactively support knowledge-sharing and build good working relationships within the team and with others in Amazon.
- You communicate clearly with your team and with other groups and listen effectively.
Producing clean, efficient code based on specificationsCreate scaleable, automated solutions for our customer base
• Solid experience with application frameworks such as Springboot and strong familiarty with micro services architecture and design patterns
• Familiarity with databases like MySQL, MongoDB, Redis etc
• Hands-on experience in analysis, design, coding, and implementation of complex, custom-built applications
• Exposure to CI/CD using Gitlab, Jenkins preferred
• Familiarity with Docker, Kubernetes, EFK Stack is highly desired
• Broad knowledge of web standards relating to APIs (OAuth, SSL etc.)
• Exposure to product development.
• Understand Architecture Requirements and ensure effective design, development and maintenance of multiple micro services in Java Springboot deployed in cloud within containers consuming data present in relational as well as NoSQL databases.
o The microservices shall expose APIs which allow ease of integration with variety of client apps
o Microservices should handle a scale of thousands of requests per second
• Develop communication patterns between microservices which are efficient, lightweight and secured using Kafka
• Debugging issues on a live setup
• Lead a small team of engineers
• Create test cases and technical documentation
• Maintain a high level of code quality and consistency by adhering to and enhancing the coding standards, design methodology and programming practices
Your primary focus will be the development of all server-side logic, definition and maintenance of the central database, and ensuring high performance and responsiveness to requests from the front-end. You will also be responsible for integrating the front-end elements built by your co-workers into the application. Therefore, a basic understanding of front-end technologies is necessary as well.
Responsibilities
- Integration of user-facing elements developed by front-end developers with server side logic
- Writing reusable, testable, and efficient code
- Design and implementation of low-latency, high-availability, and performant applications
- Implementation of security and data protection
Skills And Qualifications
- Strong proficiency with JavaScript & OOPS
- Knowledge of Node.js and frameworks available for it
- Understanding the nature of asynchronous programming and its quirks and workarounds
- Good understanding of server-side CSS preprocessors
- Basic understanding of front-end technologies, such as HTML5, and CSS3
- Understanding accessibility and security compliance
- User authentication and authorization between multiple systems, servers, and environments
- Creating database schemas that represent and support business processes
- Implementing automated testing platforms and unit tests
- Proficient understanding of code versioning tools, such as Git
- Knowledge of AWS will be preferable
About us:
Strata is a commercial real estate investment platform that offers investors the opportunity to invest in pre-leased commercial assets such as offices, warehouses, and retail spaces across India.
We are one of the fastest-growing PropTech platforms in India and are backed by Elevation Capital, Mayfield, Kotak Investment Advisors, Gruhas (a venture by Nikhil Kamath of Zerodha) and DLF Family Office.
Our headquarter is in Bangalore, India.
We are a small yet close-knit team of 35+ people.
About you:
You have a knack for product and strongly equipped with engineering skills to make it a reality. You don’t jump into implementation unless you have clearly understood the problem/requirements and have a written design. You don’t hesitate asking questions and giving critical reviews while respecting others’ opinions. You are a fearless engineer, and not afraid to fail, not on production though ;) You have a strong sense of ownership. You have a startup experience. You don’t feel annoyed if required to work on off days in case of production incidents (no development).
Your responsibilities:
You will primarily work on the backend maintaining the existing platform and writing new enhancements and features. Apart from your own features, as a senior member of the team you will be expected to be actively involved in overall design discussions and peer code reviews. You will factor in extensibility, maintainability, scalability and security in designs and code. You will ensure that best engineering practices are followed. You will support your team members when they are facing challenges, and mentor them when appropriate. You will strive for overall engineering excellence.
Must-have Skills:
- 4-8 years of total experience
- 2+ years of experience in Django and DRF. You must be pro at it. The team will be looking up to you for making most out of DRF.
- Designing and building scalable web applications
- Good understanding of REST principles
- SQL database design and queries
- Working knowledge of AWS
Good-To-Have Skills:
- Angular or any other JavaScript frontend framework
- Designing microservices
- DevOps experience
FAQ's.
1. Your technology ingredients?
Programming languages:
Our backend is written in Python using Django framework. And the frontend is in AngularJS. Currently there is no mobile app.
Infrastructure:
We are an AWS shop and use their services for most needs, Docker for containerization and ECS as orchestrator, RDS as database, S3 for storage and SQS as messaging backend.
Other tools:
BitBucket for Git and CI/CD pipeline, Trello for project management; and Google Meets and Slack for communication.
2. Your hiring plan?
Currently the engineering team comprises of 3 engineers, and we plan to grow it to 8 by the end of 2021.
3. Your Interview process?
We will try to finish the process within two weeks. In case we can’t go ahead with your candidature, we will clearly and immediately let you know. But in case of competing applications, we may request you to wait for a week or two.
- 15 minutes introductory call to discuss requirements and expectations
- 30 minutes online coding assignment on a screen sharing session
- 1 hour technical interview covering problem solving, code review and aptitude
- 15 minutes call with co-founder for final discussion
In case of inability to come to a conclusion from either side, we may go for an additional round.
4. Your WFH and WFO policy?
Due to Covid-19 the team is working from home and will continue till March-2022. After that we will work from the Bangalore or Pune office (yet to be finalised). You should be open to relocate to any of the cities.
5. Your funding status?
In March 2020, Strata raised $1.5 million in seed funding; and $6 million in Series-A in July 2021.
Experience with Node.js (Loopback / Express)
Understanding design principles behind a scalable application
Implementing automated testing platforms and unit tests
Basic understanding of web markup, including HTML5 and CSS3
Write, debug, and deploy code to production
Strong experience with object-oriented programing
Strong fundamentals in Data Structures and Algorithms.
Responsible for analysis of current tasks, analyze, design and develop the code
We are sensitive for timely delivery of different sprint development milestones.
Proficient knowledge of cross-browser compatibility issues and ways to work around such issues.
Proficient understanding of code versioning tools, such as Git, Mercurial, or SVN.