Lead Software Engineer - Data Transfer

  • Location: Krakow
  • Department: Engineering
  • Work Status: Full-time

Overview

At Relativity, we make software to help users organize data, discover the truth, and act on it. Our e-discovery platform is used by more than 13,000 organizations around the world to manage large volumes of data and quickly identify key issues during litigation, internal investigations, and compliance projects.

Here you can own your career in a community of values-driven people who help our customers around the world solve complex data challenges. If this sounds like the place for you, check out the details of this position below.

The Lead Engineer practices software engineering and leads a team of software developers to apply software engineering best practices and principles to deliver high quality, maintainable, reusable, reliable, performant, and scalable software on schedule. 

The Lead Engineer serves as a technical liaison between his or her team and other internal and external development teams to identify and resolve dependencies, to identify, improve, and apply software engineering best practices and processes, and to identify and mitigate risks to the on-time delivery of software. 

The Lead Engineer may serve as a technical liaison between his or her team and external organizations such as a solutions providers and standards bodies

Responsibilities

  • Work with management to set and communicate team goals and vision aligned to business requirements; ensure the team stays focused and delivers against the goals, adapting to changing business requirements
  • Specify non-functional software requirements and analyze all requirements to determine design feasibility within time and cost constraints
  • Estimate software development timelines and be accountable to the timelines by actively managing risks and changing requirements
  • Provide input into system software architecture development by working with Staff, Advisory and Principle Engineers as required
  • Design and lead the design of software using abstraction, low coupling and high cohesion, modularization, encapsulation and information hiding, interfaces, and separation of concerns
  • Implement and lead the implementation of software using the practical application of algorithms, defensive programming and exception handling, fault tolerance, design patterns, and best practices of Object-Oriented Design (OOD) and Object-Oriented Programming (OOP) such as SOLID
  • Test and lead the test of software with traceability back to requirements emphasizing the practice of Test Driven Design and the use of autonomous frameworks and Continuous Integration
  • Follow and improve Agile software development processes and practices (Scrum) to improve engineering efficiency to maximize productivity and reduce expense
  • Ensure the adoption and application of software development tools (IDEs, test frameworks, static analyzers, etc.) to improve engineering efficiency to maximize productivity  and reduce expense
  • Identify and reduce technical debt

Qualifications

  • Ability to decompose larger problems into software development work as self-contained, minimally inter-dependent tasks for team members to implement
  • Ability to segregate software using abstraction and interfaces
  • Ability to efficiently multi-task and manage multiple concurrent tasks by identifying differing priorities relative to changing business need
  • Ability to consistently identify and deliver technical improvement feedback to team members in a supportive and constructive manner to achieve demonstrable results over time
  • Excellent problem solving
  • Excellent interpersonal and teamwork to facilitate collaborative problem solving amongst team members
  • Excellent verbal and written communication to clearly, succinctly, and completely communicate intent (both technical and non-technical) in interactions with team members and management
  • Excellent time management to ensure time (both his or hers and that of his or her team) is optimally allocated to meet prioritized business need
  • Bachelor’s Degree or equivalent in Computer Science or related disciplines
  • 8+ years of software development of commercial-grade systems and applications with a proven track record of building and leading successful engineering teams
  • Experience in .NET software development using C# and Microsoft SQL Server
  • Experience with unit testing, preferably in the TDD mode
  • Fluency in English
  • Knowledge of JavaScript, CSS, and AJAX will be a plus
  • Effective communication and teamwork skills

About Relativity

Relativity has over 160,000 users in 40+ countries from organizations including the U.S. Department of Justice, more than 70 Fortune 100 companies, and all of the Am Law 200. Relativity's cloud solution, RelativityOne, offers all the functionality of Relativity in a secure and comprehensive SaaS product. Our company has also been named one of Chicago's Top Workplaces by the Chicago Tribune for seven consecutive years. If you’re ready to grow with us, we’d love to hear from you. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, or national origin, disability or protected veteran status, or any other legally protected basis, in accordance with applicable law.

How We #ActOnIt


All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, or national origin, disability or protected veteran status, or any other legally protected basis, in accordance with applicable law.