What you'll do...As a Systems Telemetry Staff software engineer, you will be a key developer in the development of telemetry designs, managed services, and real-time telemetry software systems. You will use your depth of engineering and experience to lead software initiatives, proof of concepts, analysis of software products, and real-time metric and data system designs.You'll sweep us off our feet if....
- You transform business requirements to component designs and code in a fast pace agile environment
- You lead the design of new systems and the redesign of existing systems to meet business requirements, changing needs, and integration of state-of-the-art technology.
- You prioritize and optimize designs where needed to ensure business needs are consistently being met. As a Staff software engineer, you will have the opportunity to lead and apply new technologies to overcome design challenges and technical problems enabling mission critical real-time telemetry systems.
- Collaborating with the business partners, product managers and representatives from other engineering disciplines. Specifically, you will work with enterprise architects, product owners, data scientists, engineers, and business managers to bring telemetry R&D projects into production.
- Using a combination of open source and COTS technologies to solve real-time telemetry problems at an enterprise wide scale.
- You will work on Multi-Cloud deployments with Kubernetes, VMs and technologies which consist of Prometheus, microservices, Time-Series Databases, Application Performance Management (APM), Centralized Logging and log search solutions e.g., with Splunk clusters, Kafka, and Spark data streaming.
- Leads the work of other small groups of six to ten engineers, including offshore associates, for assigned Engineering projects by providing pertinent documents, direction, and examples; identifying short- and long- term solutions and timeline; reviewing and approving proposed solutions; implementing new architectural patterns; and performing design and code reviews of changes.
- Troubleshoots business and production issues by reviewing and analyzing information (for example, issue, impact, criticality, possible root cause); engaging support teams to assist in the resolution of issues; formulating an action plan; directing actions as designated in the plan; interpreting the results to determine further action; performs root cause analysis to prevent future occurrence of issues; and completing online documentation.
- Leads the discovery phase of medium to large projects to come up with high level design by partnering with the product management, Web Operations, project management, business and user experience teams; obtaining cross-function approvals; driving proof-of-concept; and implementing prototypes to validate ideas.
- BS/MS in Computer Science, Engineering, or equivalent, with 8 or more years in software engineering, design, and architecture
- Strong architecture, programming, and engineering skills. Should have an analytical design approach and demonstrated experience in software engineering and programming
- Firm grasp of data structures, algorithms with fluency in Java and/or Go (Golang)
- Demonstrated background in developing software systems and a solid foundation in programing
- Experience with one or more TSDBs (M3DB, Cortex, Thanos, Prometheus, InfluxDB, KairosDB)
- Demonstrated ability to lead, partner, and collaborate cross functionally across many engineering organizations
- Experience in information retrieval by extract, transform, load (ETL) processes
- Experience in building real-time large scale, high volume, distributed applications, and telemetry data pipelines on top of data buses (Kafka) using publish/subscribe models.
- Hands on experience with large scale distributed databases NoSQL, Big data technologies (Hadoop, object storage, public cloud storages)
- Experience with building metric agents/ client library (coda hale, micrometer) for polyglot environments, Prometheus exporters (open telemetry)
- Knowledge and/or experience with containerized framework Kubernetes, containers, service meshes, and micro services
- Knowledge of public, private and hybrid cloud deployments
- Experience building and operating high-scale RESTful services and integrations.
- Excellent written and verbal communication skills for diverse audiences based on engineering subject matter
- Ability to document requirements, architectural designs and analysis findings in both business and technical terminology
- Software development in an Agile iterative CI/CD development environment with experience using deployment automation/configuration management, especially ansible, Jenkins
- Promote and support company policies, procedures, mission, values, and standards of ethics and integrity
- Knowledge of Prometheus
- Knowledge of Open Telemetry observability framework
- Involvement and contribution with open-source software communities
- Knowledge of micro services architectures, Istio, and micrometer
- Advanced Python, shell scripting
- Configuration management -Ansible, chef, puppet
- Real time data ingestion, transformation with Spark
- Full stack cloud software development experience
- Experience in creating and maintaining managed metric services
- Experience with large scale distributed system deployments
- Experience with advanced SQL queries
- Experience with observability tools and system architectures
Outlined below are the required minimum qualifications for this position. If none are listed, there are no minimum qualifications.
Bachelor's degree in Computer Science and 4 years' experience in software engineering or related field OR 6 years' experience in software
engineering or related field.
Outlined below are the optional preferred qualifications for this position. If none are listed, there are no preferred qualifications.
Master's degree in Computer Science or related field and 3 years' experience in software engineering