Join our team as a Staff Software Engineer at Epiq in Hyderabad, India. We are a leading eDiscovery platform company with a distributed team. As part of our team, you will be responsible for designing, developing, and maintaining our enterprise-grade software. This is a full-time, on-site opportunity with a hybrid work model. We are looking for professionals with 10-16 years of software development experience in Java and Python, with expertise in front-end technologies like React and Angular. Knowledge of RESTful APIs and RDBMS is essential. Experience with AWS, Elasticsearch, Git, and TFS is preferred. If you have a passion for solving complex software problems and want to work with cutting-edge technologies, join us at Epiq.
Job Description
Job Title: Staff Software Engineer
Epiq Company/Division: Epiq – Legal Solutions
Location: Hyderabad, India
Work Timings: 10:30AM – 7:30PM IST (Hybrid model)
Position Overview
We are looking for talented, highly motivated people to join our team that builds and maintains Epiq Discovery, a leading eDiscovery platform capable of handling complex legal matters all around the globe.
Our distributed team spans across multiple countries and time zones, and we are growing quickly as we expand our product’s reach into new regions around the world. This position is primarily responsible for designing, developing, innovating solutions on complex problems and maintaining Epiq’s enterprise-grade software and thus solving complex issues in the legal space.
Job Responsibilities
- Work in a fast-paced environment as a Lead Software Developer in an Agile (Scrum) development team.
- Take complete ownership of work items and deliverables and translate business requirements into intuitive software solutions.
- Work closely with the Architects during all technical design discussions and finalize the solution approach while keeping quality, performance, and design best practices in mind.
- Be able to implement the hands-on solution independently or as a part of team and drive them to closure.
- Keep a critical eye on solutions being implemented and identify quality, performance, or architectural concerns.
- Document technical issues and resolutions identified during implementation of user story(s), configuration changes and deployment issues and share them with the team.
- Resolve technical issues for the team and coach junior engineers to scale-up on technology, design, and implementation approaches.
- Contribute to Production Support activities as required by the project.
- Collaborate with fellow software developers across geographic locations.
- Mentor other developers with a constructive, results oriented technical approach.
- Solve complex yet interesting software problems involving distributed systems and extremely large volumes of unstructured data.
- Interact with cross-product teams, implement solutions to integrate various products to operate seamlessly and at scale.
- Build knowledge and understanding of at least two or more products in the Epiq’s portfolio.
Qualifications and Skills
- B. Tech or B.E degree in Computer Science or related engineering streams/ M.S. in Computer Science
- 10 - 16 years of Software development experience with Java
- At least 4 years of experience of Software development experience with Python
- Should have ample experience on front-end libraries, HTML, CSS, and frameworks such as React or Angular.
- Should be well-versed with RESTful APIs. Experience with Django is a plus.
- Should have a thorough understanding of object-oriented development.
- Should be well versed with S.O.L.I.D principles and design patterns.
- Should be well versed with RDBMS, such as MySQL, Oracle, or SQL Server.
- Working knowledge on Cloud based architecture with AWS and related services is a must.
- Experience on Elasticsearch/OpenSearch (or similar technologies) is a must.
- Experience working with source control management software such as Git and TFS
- Experience working with ALM tools such as Azure DevOps (formerly VSTS) or Jira
- Any experience on Enterprise-grade SaaS product delivery and knowledge on related Architectural, Security best practices would be a good to have.
- Experience on AI/ML is a big plus.
- High energy, proactive and approachable personality who enjoys solving diverse problems.
- Proven problem-solving abilities and creative thinking.
- Ability to positively interact with all members of development team, cross-functional teams, and product teams.
- Should have led teams (4-8 members) in the past.
- Self-starter capable of delivering tasks with close to zero supervision.
- Knowledge of concurrent programming challenges: multi-threading, race conditions, deadlocks etc.
- Should have a good understanding of multithreading and asynchronous methods of code execution.