What you'll do... Position: Senior Software Engineer Job Location: 1375 Crossman Avenue, Sunnyvale, CA 94089 Duties: Develop and maintain release automation systems. Design and implement release processes, workflows, and tools to streamline the software release cycle for mobile applications. Collaborate with cross-functional teams, including developers, QA engineers, and project managers, to plan and execute software releases. Ensure that releases are delivered on time and meet quality standards. Conduct release testing and quality assurance: Perform thorough testing of mobile applications to identify and address any issues or bugs before release. Develop and maintain automated testing frameworks to streamline the testing process. Implement and work on continuous integration and deployment pipelines to automate the build, testing, and deployment of mobile applications. Ensure proper version control and release branching strategies are in place to manage code changes effectively. Monitor the release process and troubleshoot any issues or bottlenecks that may arise during the release cycle. Identify and implement improvements to enhance the efficiency and reliability of the release process. Minimum education and experience required: Master's degree or equivalent in Computer Science, Computer Engineering, Computer Information Systems, Software Engineering, or related area and 1 year of experience in software engineering or related area; OR Bachelor's degree or equivalent in Computer Science, Computer Engineering, Computer Information Systems, Software Engineering, or related area and 3 years of experience in software engineering or related area. Skills required: Experience with at least one of the following programming languages: Python, Java, Kotlin, Swift, or Objective-C. Experience with mobile application development frameworks and tools. Experience with mobile release engineering practices, including release planning, version control (Git), testing, and deployment. Experience with release automation tools and technologies. Experience with mobile testing frameworks and methodologies including PyTest, XCTest, and Instrumentation tests. Experience developing and executing comprehensive test plans and automating testing processes. Experience with at least one of the following Continuous integration and deployment (CI/CD) tools: Jenkins, GitLab CI, or Bitrise. Experience with build automation, code signing, and app distribution processes. Experience with the defect life-cycle process, defect tracking tools and methodologies. Experience with defect reporting, regression testing, root cause analysis, and root cause corrective action. Experience tracking and analyzing defects for the component/module and carrying out regression testing to fix defects in all instances of code changes. Experience analyzing defects from past projects/solutions to avoid recurrence of similar defects. Experience troubleshooting performance and availability bottlenecks for applications. Experience with software architecture, distributed systems, scalability, design patterns, disaster recovery, tech stacks, Minimum Viable Product (MVP), and non-functional requirements. Experience with operating systems, software maintenance tools and techniques, application monitoring tools and techniques. Experience with debugging tools, mock screen, pseudocodes, reverse engineering, traceability matrix, system performance, security, and integration. Experience with data migration and accessibility and design methodologies. Experience conducting maintenance procedures for applications independently. Experience monitoring and evaluating the performance of applications by tracking and analyzing appropriate metrics. Experience performing maintenance and re-engineering activities. Employer will accept any amount of experience with the required skills.
Stand Out From the Crowd
Upload your resume and get instant feedback on how well it matches this job.
Job Type
Full-time
Career Level
Mid Level