Principal Software Engineering

AT&T2 months ago
Dallas, TX, United States
On-site
Full-time
Junior Level (1-3 years)

Job Description

Position Overview

This position requires office presence of a minimum of 5 days per week and is based in Dallas, Texas. No relocation is offered.

Join a strategic initiative to transform our broadband device software development organization. As a Software Engineer, you will contribute to the development of high-quality, innovative software for the next generation of broadband gateways serving 15 million+ customers.

Location: Dallas, Texas
Schedule: 40
Salary: $174,100.00 - $261,100.00

Key Responsibilities

  • Join a strategic initiative to transform our broadband device software development organization. Your contributions will help shape industry-leading products.
  • Embedded Linux software development for Broadband Customer Premise Equipment (CPE).
  • Migrating CPE from a proprietary software platform to an opensource Prplware (OpenWRT) based software solution.
  • Design, develop, and document existing systems to improve reliability while creating innovative new features.
  • Develop software for new hardware incorporating cutting-edge features and technology.
  • Manage ongoing software architectural updates including new Prplware, OpenWRT, and Linux kernel versions.
  • Work within an Agile environment with up to 5 releases a year.
  • Develop automated testing processes to validate new features.
  • Create applications to run in a Lifecycle Management (LCM) container on the Broadband CPE.

Required Qualifications

  • Strong knowledge of the Linux operating system including process execution, multi-process environments, and inter-process communication; with an understanding of networking fundamentals, UDP/TCP basics, and packet flow through the Linux packet processing stack.
  • Familiarity with Linux firewall and routing concepts, common networking protocols (DHCP, DNS), tcpdump, and network protocol analysis.
  • Understanding of WiFi concepts including AP and station roles, association and authentication, and SSID configuration.
  • Experience with the gcc toolchain, debugging stack traces, syslog, and logging concepts.
  • Experience in an Agile development environment.
  • Extensive experience with C programming, familiarity with standard C libraries as well as other libraries like libssl, libcrypto, libcurl, and prplware libraries.
  • Familiarity with the OpenWrt build system and its IPC mechanism (ubus), overlayfs, and configuration system (UCI).
  • 7+ years of experience in embedded software development with a proven track record of creating innovative solutions and applications.
  • Education: Bachelors degree (BS/AA) desired in Computer Science or equivalent.

Benefits & Perks

  • A pivotal leadership role in reshaping our broadband software capabilities.
  • Opportunity to build a modern, AI-augmented engineering culture.
  • Direct impact on millions of customers and the company’s market position.
  • Competitive compensation and benefits.
  • Medical/Dental/Vision coverage.
  • 401(k) plan.
  • Tuition reimbursement program.
  • Paid Time Off and Holidays (at least 23 days of vacation each year and 9 company-designated holidays).
  • Paid Parental Leave and Paid Caregiver Leave.
  • Additional sick leave beyond state and local requirements (where available).
  • Adoption Reimbursement.
  • Disability Benefits (short term and long term).
  • Life and Accidental Death Insurance.
  • Supplemental benefit programs including critical illness/accident hospital indemnity and group legal plans.
  • Employee Assistance Programs (EAP) and extensive employee wellness programs.
  • Employee discounts of up to 50% off on eligible AT&T mobility plans and accessories.
  • AT&T internet (and fiber where available) and AT&T phone benefits.

Required Skills

Lifecycle Management (LCM)
C Programming
Agile Development
Networking Protocols (UDP/TCP, DHCP, DNS)
Prplware Libraries
Embedded Linux Development
Debugging and gcc Toolchain
Software Architecture
Linux Kernel and OpenWRT
Inter-process Communication