Job description
Job Title: Staff Software Engineer - Android
Location: Remote USA. This role can be performed anywhere from the United States.
The Role
GoPro delivers a set of world-class, cross platform, video editing applications on iOS, Android, macOS and Windows that are collectively used by millions of people each month. These tools enable users to easily build incredible videos of their life events and share them with their family and friends.
On this team you’ll be responsible for developing, implementing, and testing of software on Android devices that are part of an interconnected ecosystem connecting cameras, cloud, phones, and people.
What You Will Do
Writing software in Kotlin and Java for Android-based phones and tablets.
Participating in software design process by asking questions, “poking holes,” offering suggestions, and crafting solutions.
Following industry best practices when implementing software, especially around areas surrounding security and privacy.
Using visual design, information architecture, and interaction design to assist the writing of working and usable software.
Checking code into version control according to company version control policy.
Keeping up on changes and advances in Android, common devices, and mobile technology.
Working with various types of databases, including key-value, SQL, and “NoSQL”.
Refactoring old code so it runs faster and more efficiently.
Helping to review code and testing software via automated methods, including but not limited to writing and running unit tests, functional tests, integration tests, as well as manual methods.
Skills We’re Excited About
- At least 5 years of professional experience (or equivalent) programming with Kotlin and/or 8 years of Java.
- Understanding of Android OS, Android Studio, and Android application development.
- Expertise developing native Android Applications in Kotlin and/or Java.
- Bachelor’s degree in Computer Science, or equivalent studies, experience and certification.
- Strong Computer Science fundamentals: data structures, algorithms, software methodology.
- Familiarity with JSON, REST APIs, RxJava, and reactive style programming.
- Familiarity with Compose, view models, and dependency injection / dagger.
- Demonstrated knowledge of MVVM, MVC, OOP, memory management and threading.
- Proven successful track record showing an aptitude for engineering and product sense.
- Strong communication (written and verbal) skills.
- Self-motivated Ability to quickly learn and apply new technologies and methodologies.
- Possess the passion to design, build and polish innovative applications.
- Experience implementing automated tests, including unit, functional, and integration tests.
- Experience with Git, continuous integration, and automated build tools.
Bonus Points For
- Strong debugging, and analytics instrumentation skills.
- Experience with Jira, Jenkins, Github actions, and Confluence
- Familiarity with handling Video (mp4) and Photo (jpeg) content within an application.
- General experience with Audio, Photo, and Video editing and streaming.
- OS: Linux, iOS, MacOS, Windows.
- Other Languages: Python, C/C++, JavaScript, HTML, Objective-C.
- Security, encryption and authentication protocols such as OAuth, SSL, TLS, PKI, AES.
- Experience with Agile software development: Scrum, and Kanban
- Experience with Android NDK, and JNDI
- Fundamentals of Wi-Fi and Bluetooth connectivity, TCP/IP network and HTTP protocols.
- Protocols: TCP/IP, UDP, HTTP/S, HLS, RTMP, MTP, BLE and Bluetooth Classic.
Why Work With Us?
Create your own destiny. GoPro enables you and trusts you to get your own job done, because we believe that autonomy in role brings out the best in our employees.
Live your best life. We’ve adopted remote and flexible work arrangements to support work at GoPro alongside our commitment to supporting employee wellbeing, belonging and connection with one another.
Work with leading edge technologies. We encourage employees to cultivate and use the latest and greatest technology, to provide the best solutions to serve our customers. We celebrate creative solutions that bring innovation to GoPro technology.
GoPro Highlights
- Get your very own GoPro camera + gear
- Medical, dental, and vision insurance – premiums are 100% paid for employees, 80% paid for dependents
- Life insurance and disability benefits
- Generous time off policy
- 12 weeks paid parental leave for new parents
- Pre-tax and Roth 401(k) options
- Discounted employee stock purchase plan (ESPP)
- LiveHealthy monthly wellness reimbursement
- Wellness programs including 1:1 Coaching, 1:1 Therapy sessions, and mental health resources
- Innovative remote-friendly wellness classes and events
- Flexible work arrangements
- Monthly phone and internet reimbursement
- Professional + personal development opportunities, i.e. Opportunity Lab, technology trainings, certifications, Peer-to-Peer learning, conferences and more
- Opportunities to get involved in the causes that you care about (annual camera donation + volunteer events)
GoPro is proud to be an Equal Opportunity Employer.
The pay range for this role is between $150,000 - $172,550. Actual pay within the range is dependent on multiple factors, including your residence location and prior work experience. Equity, benefits, and a discretionary bonus may be additional forms of compensation for this role and are not included in the provided pay range.
#LI-Remote #flexible #LI-EC1