
Similar jobs
Position :Principal Engineer
Location : Remote
EGNYTE YOUR CAREER. SPARK YOUR PASSION.
Egnyte is a place where we spark opportunities for amazing people. We believe that every role has meaning, and every Egnyter should be respected. With 17,000 customers worldwide and growing, you can make an impact by protecting their valuable data. When joining Egnyte, you’re not just landing a new career, you become part of a team of Egnyters who doers, thinkers, and collaborators are who embrace and live by our values:
Invested Relationships
Fiscal Prudence
Candid Conversations
ABOUT EGNYTE
Egnyte is the secure multi-cloud platform for content security and governance that enables organizations to better protect and collaborate on their most valuable content. Established in 2008, Egnyte has democratized cloud content security for more than 22,000 organizations, helping customers improve data security, maintain compliance, prevent and detect ransomware threats, and boost employee productivity on any app, any cloud, anywhere. For more information, visit
www.egnyte.com.
ABOUT THE ROLE
Egnyte is seeking an experienced Principal 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 on a daily basis. 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.
WHAT YOU’LL DO:
- 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 history of technical innovation
- Experience providing technical leadership to engineers
Bonus Qualifications (Good to Have)
- 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
BENEFITS
- Competitive salaries
- Medical insurance and healthcare benefits for you and your family
- Fully paid premiums for life insurance
- Flexible hours and PTO
- Gym reimbursement
- Childcare reimbursement
- Group term life insurance
COMMITMENT TO DIVERSITY, EQUITY, AND INCLUSION:
At Egnyte, we celebrate our differences and thrive on our diversity for our employees, our products, our customers, our investors, and our communities. Egnyters are encouraged to bring their whole selves to work and to appreciate the many differences that collectively make Egnyte a higher-performing company and a great place to be.
- Lead the development of the backend systems for our first product
- Build reliable, secure and performant backend systems
- Drive test coverage and continuous delivery automation within the team
- Mentor and provide feedback to teammates
Requirements
- 5+ years of software development experience
- Strong computer science fundamentals
- Deep and wide knowledge of Python ecosystem
- Can write code that is readable, maintainable, secure and performant
- Know the importance of tests and how to approach writing different types of tests
- Good intuition for REST API design
- Deep understanding of relational databases, transactions, entity-relationship modeling
- Comfortable writing highly concurrent systems
- Experienced in using profilers, tuning garbage collection, optimizing SQL queries
Have you streamed a program on Disney+, watched your favorite binge-worthy series on Peacock or cheered your favorite team on during the World Cup from one of the 20 top streaming platforms around the globe? If the answer is yes, you’ve already benefitted from Conviva technology, helping the world’s leading streaming publishers deliver exceptional streaming experiences and grow their businesses.
Conviva is the only global streaming analytics platform for big data that collects, standardizes, and puts trillions of cross-screen, streaming data points in context, in real time. The Conviva platform provides comprehensive, continuous, census-level measurement through real-time, server side sessionization at unprecedented scale. If this sounds important, it is! We measure a global footprint of more than 500 million unique viewers in 180 countries watching 220 billion streams per year across 3 billion applications streaming on devices. With Conviva, customers get a unique level of actionability and scale from continuous streaming measurement insights and benchmarking across every stream, every screen, every second.
What you get to do in this role:
Work on extremely high scale RUST web services or backend systems.
Design and develop solutions for highly scalable web and backend systems.
Proactively identify and solve performance issues.
Maintain a high bar on code quality and unit testing.
What you bring to the role:
5+ years of hands-on software development experience.
At least 2+ years of RUST development experience.
Knowledge of cargo packages for kafka, redis etc.
Strong CS fundamentals, including system design, data structures and algorithms.
Expertise in backend and web services development.
Good analytical and troubleshooting skills.
What will help you stand out:
Experience working with large scale web services and applications.
Exposure to Golang, Scala or Java
Exposure to Big data systems like Kafka, Spark, Hadoop etc.
Underpinning the Conviva platform is a rich history of innovation. More than 60 patents represent award-winning technologies and standards, including first-of-its kind-innovations like time-state analytics and AI-automated data modeling, that surfaces actionable insights. By understanding real-world human experiences and having the ability to act within seconds of observation, our customers can solve business-critical issues and focus on growing their business ahead of the competition. Examples of the brands Conviva has helped fuel streaming growth for include: DAZN, Disney+, HBO, Hulu, NBCUniversal, Paramount+, Peacock, Sky, Sling TV, Univision and Warner Bros Discovery.
Privately held, Conviva is headquartered in Silicon Valley, California with offices and people around the globe. For more information, visit us at www.conviva.com. Join us to help extend our leadership position in big data streaming analytics to new audiences and markets!
2. Data structure (HashMap, treemap, arraylist, linklist),
3. Streaming concepts (partitioning), Junit
4. Exception handling and workflow, Test coverage (why its important, how it gets handled at
java and spring layer, morckito library if the candidate knows that would be great),
5. OOPS concepts (inheritance),
6. Threading (mutex, threadpool, threading implementation, singleton factory, builder pattern,
abstract)
7. Real world problems (atleast 1 to be asked in IAAS interview) (movie ticket booking, parking
booking), To be asked to only selected candidates: Puzzle (probability/)
8. Memory management: Garbage Collection (GC), Heap dump, Thread dump, apache, google
library.
9. Spring frameworks and database. Data lakes, star lakes, schemas, indexing, partitioning,
optimize query, hibernate.
10. Data warehouse vs nosql vs time series database (KDB, DB2), data storage patterns.
11. Types of transaction control. Column level.
12. Query formation, grouping, nested queries, joints (inner joints, outer joints)
13. If candidate has spring exp: Architecture and various layers of Spring, coupling concepts,
dependency injections, inheritance, Bean level, JMS connection pooling concepts, Lambda,
Annotation vs XML, Kafka, Hibernates.
14. Good to have AI/ML inclination.
Bifurcation of Must have and good to have skills:
Must have skills Good to have skills
Core java (60%), spring (15%), and databases
(15%).
Mockito library
Data structure (HashMap, tree map, array list,
link list)
Threadpool
Streaming concepts (partitioning) Memory management
Exception handling Lambda, Annotation vs XML, Kafka, Hibernates
OOPS GCP or any cloud technology
Threading (singleton factory, builder pattern) AI/ML inclination
Real world problems (movie ticket booking,
parking booking)
Spring frameworks and database (indexing,
partitioning, layers of Spring, JMS connection)
Data warehouse vs NoSQL vs time series
database
Junit
- 2 - 6 years of software development experience
- Good grasp on programming fundamentals including OOP, Design Patterns and Data Structures
- Excellent analytical, logical and problem-solving skills
- Software Development Engineer
- Good understanding of complexities involved in designing/developing large scale systems
- Strong system design skills
- Experience in technologies like Elasticsearch, Redis, Kafka etc
- Good knowledge of relational and NoSQL databases
- Familiarity with common machine learning algorithms. In-depth knowledge is a plus
- Experience of working with big data technologies like Hadoop, Spark, Hive is a big plus
- Ability to understand business requirements and take ownership of the work
- Exhibit passion and enthusiasm for building and maintaining large scale platforms
Job Description
Apply only if you have experience in data structure and algorithms. (Data structure and algorithms based questions is a part of the interview)
Experience: 3 + years
Location: Bangalore
Notice Period: Immediate to 20 days
Working: currently WFH
Skills: Core Java developer, hashmap, linked list, array, spring, hibernate, OOPS
Please mention the IT skills worked on.
Your Opportunity
- Own and drive business features into tech requirements
- Design & develop large scale real time server side systems
- Quickly create quality prototypes
- Staying updated on emerging technologies
- Ensuring that all deliverables adhere to our world class standards
- Promote coding best practices
- Mentor and develop junior developers in the team
Required Experience
- 4+ years of relevant experience as described below
- Excellent grasp of Core Java, Multi Threading and OO design patterns
- Experience with Scala, functional, reactive programming and Akka/Play is a plus
- Excellent understanding of data structures and algorithms
- Solid grasp of large scale distributed real time systems
- Prior experience on building a scalable and resilient micro service
- Solid understanding of relational databases, NoSQL databases and Caching systems
- Good understanding of Big Data technologies such as Spark, Hadoop is a plus
- Experience on one of AWS, Azure or GCP
Who you are
- You have excellent and effective communication and collaborative skills
- You love problem solving
- You stay up to date with the latest technologies and then apply them in real life
- You love paying attention to detail
- You thrive in meeting tight deadlines and prioritising workloads
- Ability to collaborate across multiple functions
Education
Bachelor’s degree in Engineering or equivalent experience within the field










