Staff Engineer - iOS
Department Summary
DISH is a Fortune 200 company that continues to redefine the communications industry. Our legacy is innovation and a willingness to challenge the status quo, including reinventing ourselves. We disrupted the pay-TV industry in the mid-90s with the launch of the DISH satellite TV service, taking on some of the largest U.S. corporations in the process, and grew to be the fourth-largest pay-TV provider. We are doing it again with the first live, internet-delivered TV service - Sling TV - that bucks traditional pay-TV norms and gives consumers a truly new way to access and watch television.
Now we have our sights set on upending the wireless industry and unseating the entrenched incumbent carriers. We are driven by curiosity, pride, adventure, and a desire to win - it's in our DNA. We're looking for people with boundless energy, intelligence, and an overwhelming need to achieve, to join our team as we embark on the next chapter of our story.
Opportunity is here. We are DISH.
Job Duties and Responsibilities
DISH is looking for a talented Staff Engineer with expertise in iOS development, specifically in Objective C and Swift. This individual should be prepared to dive into their work with enthusiasm and a strong commitment to maintaining high coding standards. They should be experienced with handling complex ideas and be able to abstract that complexity into its simplest parts.
Concretely this project will ingest data from many different providers with various data types. Your job will be to learn to compress and abstract that complexity in an elegant, scalable, and observable way, with writing good documentation along the way. We work in a highly collaborative environment, so this developer must be able to communicate well and work well with different engineers across the stack and other key roles.
At the same time, s/he can explain the architecture and implementation details to various stakeholders-from junior and mid-level engineers executives in the organization. S/he will be passionate about software development. They are constantly striving to learn new things and improve their skills. They follow industry news, regularly discover and work with new technologies, and read literature to keep their skills current and up to best practice standards.
The successful candidate will be inventive, self-motivated, curious, thrive working with top technologists, accountable, an excellent communicator, and hungry to make a meaningful difference.
Key responsabilities:
- Be part of a team that builds impactful features for our customers and service professionals.
- Break down a feature into releasable chunks, estimate the release schedule and work on the feature iterations with your team.
- Contribute to architectural and design decisions your team makes and be able to articulate the impact of those decisions.
- Contribute to code and design reviews, evangelizing best engineering practices, and participating in Lunch & Learn sessions.
- Influence team members to do \"the right thing\".
- Utilize Apple software development tools such as Xcode and Instruments to develop, test, debug, and deploy quality software.
- Utilize tools such as Git, Gitlab, Bitbucket, and JIRA in the software development process.
- Create and executes designs for software components within a larger project.
- May perform as a technical leader or Lead Software Engineer for derivative software projects.
- Collaborate and add value through participation in peer code reviews, providing comments and suggestions.
- Provide reliable solutions to a variety of problems using sound problem-solving techniques.
- Perform technical root cause analysis and outlines corrective action for given problems.
- Serve as a mentor to less experienced software engineers (Software Engineer 1).
- Estimate the level of effort, evaluate new options of similar technology, and offer suggestions to improve processes.
Skills, Experience and Requirements
Education: Bachelor's Degree in Computer Science, Mathematics, Engineering, or related field required or equivalent experience.
Experience:
- 5+ years of experience developing mobile applications.
- 5+ years of react native experience in mobile applications.
Skills and qualifications:
- Proficient in Swift and/or Objective-C, with experience converting Obj-C code to Swift highly preferred.
- Working knowledge of modern best practices: reactive programming, dependency injection, and modular development.
- Knowledge of iOS SDK performance tools and optimization techniques.
- Experience in building complex layouts and UI.
- Familiarity with RESTful APIs to connect mobile applications to back-end services.
- Experience writing unit tests and testable code.
- Eager to understand and solve impactful business problems.
- A great collaborator with both technical and non-technical team members.
- Have a thorough understanding of programming languages, databases, operating systems, data structures, algorithms, and complexity trade-offs.
Working attire: Business casual
Working hours: This is a full-time position: 40 hours/week. Days and hours of work are typically Monday through Friday; 8:00 a.m. to 5:00 p.m. or 9:00 a.m. to 6:00 p.m.
Salary Range
Compensation: $122,550.00/Year - $165,450.00/Year
Compensation and Benefits
We also offer versatile health perks, including flexible spending accounts, HSA, a 401(k) Plan with company match, ESPP, career opportunities, and a flexible time away plan; all benefits can be viewed here: DISH Benefits .
The base pay range shown is a guideline. Individual total compensation will vary based on factors such as qualifications, skill level, and competencies; compensation is based on the role's location and is subject to change based on work location. Candidates need to successfully complete a pre-employment screen, which may include a drug test and DMV check.