
Principal Engineer/Architect :
Job Description
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.
In this role, you will (But 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 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
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 http://www.egnyte.com/" target="_blank">www.egnyte.com

About Egnyte
About
Egnyte provides secure Enterprise File Sharing and Content Governance built from the Cloud down. Access, Share and Control 100% of your data from anywhere using any smartphone, tablet or computer.
Egnyte store billion of files and petabytes of data and we are looking for help to take the platform used by millions of users to the next level of scale. Autonomy and ownership is integral to our culture and engineers own one or more services end to end.
We’re looking for Engineers and they should be able to take a complex problem and work with product managers, devops and other team members to execute end to end.
Connect with the team
Similar jobs
- Good design skills and exposure to multiple software architectures.
- Strong understanding of OO/ knowledge of frameworks such as Spring/ Spring Boot/ design and good software development practices.
- Strong core server-side technologies experience (Java).
- Knowledge of Android is a huge plus.
- Strong database skills including schema design.
- Strong knowhow of data-structures and algorithms.
- Experience with configuration management, testing, deployment.
- Hands on development across technologies.
- Compile and analyze data, processes, and codes to troubleshoot problems and identify areas for improvement
- Collaborating with the front-end developers and other team members to establish objectives and design more functional, cohesive codes to enhance the user experience
- Developing ideas for new programs, products, or features by monitoring industry developments and trends
- Recording data and reporting it to proper parties, such as clients or
-
leadership
-
- Participating in continuing education and training to remain current on best practices, learn new programming languages, and better assist other team members
- Taking lead on projects, as
- Experience in corporate training with minimum 3.5 years of experience in Technical training
- Exposure into Core Java & Advanced Java
- Candidate should have good Presentation, verbal & written communication Skills.
- Good to have knowledge on FET
Languages: Strong in Java v1.6 (v1.8, nice to have), good in SQL (for any relational database)
Framework: Spring Boot or Spring MVC Tools: Hibernate (or iBatis) for database, maven (or gradle) build tool Database: Any relational database experience (oracle, postgresql, sql server, mysql, etc) Web server/application server: Any server experience (tomcat, jboss, jetty, etc) Source code versioning: GitHub (or apache SVN) IDE: Eclipse (or anything else) Development platform: Windows or Linux Cloud platform: AWS (or any cloud platform) (optional)
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
Java Developer(java8,spring boot,microservices, rest api, SQL,JPA)
- Should have strong hands-on experience in JUnit, Spring Framework, Spring Boot.
- Should have experience in Microservices, WebSphere.
- Preferred to have experience in Jenkin and CI and CD pipeline.
- Should have worked in Agile methodologies.
- Experience in Web development, Responsive UI.
- Ability to recognize user experience needs and convert them into the design.
- Knowledge in REST services
- Basic knowledge in HTML, CSS
- Experience in Microservices
Coding in Java8, Spring, Microservices, WebFlux/Reactive Programing, Rest services, Kafka, PCF, Azure, Spring Cloud Config and NoSQL technologies.
Solve technical problems using cutting-edge technologies and best practices.
Ensure code meets the required development standards and is optimized for performance.
Unit testing for each line of new code introduced (JUnit/Mockito)
Peer code review process using GIT pull requests and Crucible (for SVN)
Propose multiple solutions to a problem, show how one option is better than another.
Ensure all aspects of technical design are correctly incorporated.
Contribute in research and implementing POCs as required.
Collaborating with onsite team in scrum ceremonies.
Who you are:
Hands on experience on Java/J2EE programming, especially on Java 8 features
Experience using latest frameworks like Spring, Spring Boot, Spring Rest, Spring Cloud Config and Webflux.
Experience in Microservices architecture & development
Experience with Test Driven Development
Experience with SQL on any of the RDBMS Oracle, PostgreSQL, My SQL
Exposure to NoSQL DB is added advantage, preferred MongoDb / Cassandra
Experience with any of the ORM frameworks Hibernate/iBatis, JDBC, JPA
Exposure to JMS Kafka, IBM MQ or Active MQ is good to have
Experience with JUNIT and any of the mocking frameworks Mockito, EasyMock, JMock
with hands on any one of the cloud platforms like PCF, Azure
Use of code repository tools like SVN, GIT
Exposure to any of the build and deployment tools like Gradle, Maven, Ant
Experience in CI/CD pipeline such as JENKINS
Experience using different design patterns, especially GoF, J2EE and Integration design patterns
Exposure to performance testing using JMeter is good to have
Ensuring the code meets the required development standards and is optimized for performance
Experience managing teams and deliveries
Providing technical design or approach for a business problem
Leading the team towards the right solution with expected quality and timelines
Experience with Agile practices
With good collaboration skills to coordinate with US based onsite team and client team.
Good team player and coordination skills






