Principal Software Engineer
Role details
Job location
Tech stack
Job description
Job Duties: Administering UNIX based systems, networking appliances, public/private clouds, and application delivery technologies. Engage with internal engineering teams to develop tooling, frameworks to drive full observability, and automation of the environment. Enhance data-driven engineering culture by providing statistical trends and analysis using real service data. Design and implement zero-downtime deployment approaches, real-time logging, alerting, and monitoring solutions, and code instrumentation, utilizing the features of NGINX Plus. Coordinate with solution architects to design secure, highly available solutions that meet objectives, automating solutions whenever possible. Develop solutions to identify reliability risks, monitor application growth, and triage production issues. Part-time telecommuting is an option. Hybrid work from company office in Louisville, CO.
Requirements
Minimum Requirements: Five (5) years of experience in job offered or in any occupation in a related field.
Special Skill Requirements:
-
Programming languages - CIC++, Python, Go. Shell scripting (including restricted I embedded shells).
-
Deep understanding of UNIX-based systems with hands-on experience in administering large fleets of servers under FreeBSD, Linux, Solaris OS running on different architectures (Intel, ARM, SPARC, PowerPC).
-
SDLC (Software Development Life Cycle) methodology in software release engineering; Agile/Scrum approach; collaboration and cross-functional teamwork (Jira, Gitlab Projects).
-
NGINX Plus - extended proprietary software built on top of NGINX open-source core, providing L4/L7 load balancing, caching, reverse proxy, dynamic reconfiguration, and live activity monitoring capabilities; core component of various F5/NGINX product offerings (F5 NGINX One Console, F5 NGINXaaS for Azure, F5 NGINXaaS for Google, F5 WAF, F5 NGINX Ingress Controller).
-
Virtualization technologies and hypervisors (Xen, VMWare, KVM, OpenVZ, LXC); security/isolation and resource management concepts of containers (namespaces, control groups); orchestration and management platforms (Kubernetes, OpenShift, EKS/AKS).
-
Implementing ADC (Application Delivery Controller) solutions in highly distributed shared hosting environments backed by network appliances from Cisco/Crescendo + dynamic SDN (Software-Defined Networking); leveraging dynamic routing protocols at scale (OSPF, BGP); managing L4/L7 load balancers (HAproxy, Nginx, Envoy, Traefik).
-
Public and private clouds - AWS, Azure, GCP, OCI; focused on building multi-cloud Saas platforms and services.
-
DevOps processes, tooling, and laaS - Cl/CD workflows in GitHub/GitLab; administering self-hosted runners; GitOps (FluxCD); Terraform, Terragrunt; Ansible.
-
Database engines - relational (PostgreSQL, MySQL); time-series/NoSQL (Prometheus/Mimir, Cassandra, ScyllaDB); Clickhouse.
-
SRE/observability/monitoring/incident management - LGTM stack (Loki, Grafana, Tempo, Mimir); Grafana Cloud; Pagerduty; Sentry; Datadog; ELK stack (Elasticsearch, Logstash, Kibana).
Part-time telecommuting is an option. Hybrid work from company office in Louisville, CO.
Benefits & conditions
Salary: $225,680 - $254,400 per annum. Benefits: F5 offers competitive pay, 401k, and other benefits: https://www.f5.com/company/careers/benefits.