Senior Software Engineer, Platform

DiscoAustin, TX
19hHybrid

About The Position

The Senior Software Engineer (platform) is a senior engineer responsible for subsystems of a project. They lead epics/initiatives, mentor more junior engineers, and contribute to architectural decisions. They have a substantial impact on their team and sometimes across teams. They design and develop high-quality, scalable, and innovative software solutions in a SaaS environment, utilizing cutting-edge technologies and methodologies, and ensuring they meet the current and future needs of the business and its customers

Requirements

  • 7-10+ years of relevant experience in software development, with a focus on SaaS or cloud-based applications.
  • 5+ years of professional experience with each of the following: Service Oriented Architecture, Docker-based services, micro-services, API and Data Model Design or Implementation.
  • Experience in leading or playing key roles in significant software projects, showing an ability to work effectively both independently and as part of a team.
  • Knowledge of ElasticSearch, NoSql Stores, Kafka, Columnar Databases, DataFlow or Pipeline Systems
  • Knowledge of Design, implementation, and operation of data-intensive, distributed system
  • Proficiency in containerization technologies such as Docker and orchestration tools like Kubernetes. Experience in creating, deploying, and managing containers is essential
  • Experience with CI/CD pipelines and tools (like Jenkins, GitLab CI, or CircleCI) for automated testing and deployment of microservices
  • Proficient in designing and architecting microservices systems, including advanced concepts like distributed data management and event driven architectures.
  • Expertise in implementing complex microservices, advanced use of containerization and orchestration, and setting up CI/CD pipelines for microservices.
  • Knowledge of system architecture, design patterns, and best practices in software development.
  • Strong skills with designing and operating software in a Cloud Provider, such as AWS, Azure, or GCP
  • Skilled with cloud-based data storage, such as: Relational Databases, NoSQL Stores, data caches, etc.
  • Skilled in analytical abilities and problem-solving, capable of addressing complex technical challenges.
  • Ability to adapt to new technologies and methodologies, and a mindset geared towards innovation and continuous improvement.
  • Effective communication and teamwork skills, essential for collaborating effectively in a dynamic and collaborative environment with various stakeholders and team members, especially from architectural perspectives.
  • Skilled in programming languages and frameworks commonly used in SaaS development. In particular, Java/Kotlin, Python, C#, as well as a deep understanding of software engineering principles.
  • Skilled in designing and developing APIs (including gRPC, GraphQL, and REST), basic understanding of HTTP/HTTPS protocols, and proficiency in API documentation.
  • Understanding of Server, Network, and Hosting Environments: Familiarity with server management, network configurations, and an understanding of cloud services (like AWS, Azure, or Google Cloud).
  • Understanding of Software Development Life Cycle (SDLC): Knowledge of various stages of the SDLC, including design, development, testing, and deployment.
  • Authorization to Work in the U.S.: Candidates must be legally authorized to work in the United States without sponsorship now or in the future. DISCO is not currently sponsoring visas, including, but not limited to, H-1B, TN, or EAD, and we are not accepting visa transfers.

Nice To Haves

  • Experience with Large-Scale Systems: Involvement in developing, maintaining, and monitoring large-scale, high-availability software systems
  • Experience with designing and developing from a Security Perspective
  • Experience leveraging observability systems (logging, metrics, traces) to monitor and debug production subsystems and generate business level metrics
  • Experience selecting and extending 3rd party components (commercial or open source) that provide operational leverage
  • Experience with Continuous Integration and Continuous Deployment (CI/CD) with an emphasis on a well-maintained testing pyramid
  • Experience with Agile development methodologies and practices
  • Experience using feature or release toggles as a code branching strategy
  • Experience with gRPC and Protocol Buffers for efficient, language-agnostic service-to-service communication
  • Experience with Contract-first designing and negotiating with other systems
  • Experience contributing to technical documentation

Responsibilities

  • Technical Leadership and Mentorship: Provides technical leadership in project teams, mentor and guide more junior engineers, and contribute to technical decision-making.
  • Performance Optimization: Focuses on designing systems for high performance, scalability, and reliability.
  • Stakeholder Engagement: Works with stakeholders, including product managers, designers, developers, and executives, to align architectural designs with business needs and customer expectations.
  • Proficient Software Development: Designs, develops, and maintains sophisticated software solutions, ensuring they are efficient, scalable, and meet business requirements with architectural excellence.
  • Responsible for System Design & Grooming for features for a subsystem.
  • Code Quality and Optimization: Upholds and enhances code quality through rigorous review processes, optimization techniques, and adherence to best practices.
  • Technical Problem Solving: Tackles complex technical challenges, employing a problem-solving approach with innovative solutions.
  • Collaboration and Communication: Works effectively within the engineering team and cross-functional teams, collaborating with other engineering teams, product managers, and stakeholders, contributing to project planning and execution.
  • Continuous Learning and Adaptation: Stays updated with the latest technology trends and advancements, continually enhancing skills and knowledge, bringing innovative ideas to the team
  • Technical Documentation: Creates and maintains comprehensive technical documentation, ensuring clarity and accessibility of information.
  • Data Platform Development: Designs, builds, and maintains, scalable and robust data platforms to support analytics, machine learning, and business intelligence.
  • Data Integration and ETL: Develops and optimizes ETL (Extract, Transform, Load) processes and data integration pipelines. Ensure efficient data flow across various sources and systems.
  • Advanced File Processing: Develops extensible file processing pipelines that offer flexible, self-service artifact generation. Researches and evaluates file processing software based on fidelity, reliability, and performance criteria.
  • Models file processing outcomes within an observability framework to provide insights for engineering teams and business leaders.
  • Develops engineering systems that facilitate rapid and minimally manual evaluation of file processors.
  • Data Management: Orchestrates scaleout data pipelines that optimize serverless and containerized compute to balance cost, latency, and duration.
  • Contributes to algorithmically intensive data engines operating on streaming, large, or multi-tenant datasets.
  • Troubleshoots systems, identify root causes, and rectify bugs.

Benefits

  • Benefits, including medical, dental and vision insurance, as well as 401(k)
  • Competitive salary plus RSUs
  • Flexible PTO
  • Opportunity to be a part of a company that is revolutionizing the legal industry
  • Growth opportunities throughout the company
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service