Jobs · Engineering

Principal Software Engineer (Android)

Stable Kernel · Atlanta, GA · 1 mo ago
RemoteRemoteEngineering$170k/yrFull-time
We need to output HTML fragment with sections: About the Company, About the Role, Core Responsibilities (maybe as Responsibilities), Intimate, Working Familiarity With (maybe as Skills/Requirements), General Requirements, Nice to Haves, A Bit More Info (compensation, schedule, benefits). Need to use

for section headings. Use
  • for any list of duties/requirements/benefits. Use

    for prose. We must not repeat job title as heading. No Job ID. Remove boilerplate: EEO etc. Also remove duplicated lines. Preserve all substantive info. We need to decide which sections to include based on content. We have: - About the Company: paragraph. - About the Role: paragraph. - Core Responsibilities Include: many bullet-like sentences separated by periods. We can turn into

    • each responsibility. - Intimate, Working Familiarity With: list of technical skills. Could be a section "Skills" or "Technical Familiarity". Use

      Skills

      with
        . - General Requirements: list of requirements. Could be

        Requirements

        with
          . - Nice to Haves: list. Could be

          Nice to Haves

          with
            . - A Bit More Info: includes Minimum Base Compensation: $170,000; full-time position; hybrid model; minimal travel; benefits list. So we can have sections: Pay, Schedule, Benefits. According to rules, only include sections if posting actually states them. It does state compensation, schedule (full-time, hybrid model), benefits (list). So we can include Pay, Schedule, Benefits. Pay: Minimum Base Compensation: $170,000. Could also mention total compensation package but that's benefits. We'll put Pay section with that. Schedule: full-time position, hybrid model, minimal travel. So schedule: full-time, hybrid (People Before Place Hybrid model), minimal travel. Benefits: list of benefits. We must not include placeholder text like "commensurate with experience". Not present. We must not include duplicated lines. Ensure we capture all substantive info. Let's extract details. About the Company paragraph: "Stable Kernel is a technology services firm and custom software developer building scalable software solutions for cutting-edge, innovative enterprises to move their business forward. We are headquartered in Atlanta, GA. We're a privately held, Great Place to Work Certified Company™ with a multi-award-winning culture and an impressive 10-plus-year trajectory of sustainable growth. At Stable Kernel, we support our employees in ways that help them do some of the best work of their lives." About the Role paragraph: "As a Stable Kernel Principal Software Engineer, you play an essential role in setting our portfolio of world-class clients up for success through the development and delivery of their most innovative, transformational initiatives. You will collaborate daily with other engineers and product team members, make decisions that influence the path of a product roadmap, leverage software development best practices, and become a more well-rounded engineer as you learn new technologies. Your knowledgeable practice, reliability, and consultative nature make you an engineer that stakeholders and teammates trust. Principal Software Engineers may be classified as individual contributors or people managers with individual contributor responsibilities." Core Responsibilities Include: The text after that is a long paragraph with many responsibilities separated by periods. We need to split into list items. Let's parse: "Technical Impact: Designing and implementing exemplary solutions regarding scalability and cost-effectiveness by making trade-offs between opportunity and complexity.Setting standards for codebase health and promoting best practices throughout the organization. Business Alignment: Clarifying strategic outcomes and influencing roadmaps and projects.Identifying, suggesting, and driving improvements in your customers' end-to-end experience.Aiding in estimating work for new business with more unknowns and coaching others in estimation best practices. Interacting with Others: Coordinating across the entire company.Influencing the entire organization to make changes to support your work.Advising teams across the company.Autonomy & Ambiguity: Designing a long-term roadmap with no direction. Translating customer and business needs and strategic direction into projects and consistently simplifying high-complexity situations.Coaching and mentoring others in tackling ambiguity.Problem-Solving:Decomposing strategic direction into projects: Planning, communicating, and executing to solve our most challenging problems.Ensuring alignment with long-term objectives, fostering a culture of informed decision-making and innovation.Anticipating most risks and driving simplification to mitigate risks ahead of time. Escalating issues while solving them in parallel ensuring others are informed.Leadership:Proposing new organization-level processes to improve key areas such as team throughput, employee happiness, or product engagement.Driving best practices across the organization.Exhibiting exceptional mentoring abilities and fostering a culture of continuous learning and improvement byidentifying and nurturing potential in others providing strategic guidancehelping develop career paths for team members Leading projects.Setting the strategic direction for projects or areas of technology, leading multiple project teams, and influencing decision-making at higher organizational levels. Exhibiting strong capabilities in stakeholder management, negotiating, and problem-solving in complex scenarios. Mentoring and developing other leaders within the team, fostering a culture of innovation, and contributing significantly to organizational goals." We need to split into sensible list items. Could break at each period after a capital letter? But we need to preserve all substantive info; we can just keep the whole block as a

            maybe? However rule: Use

            • for any list of duties/requirements/benefits. The responsibilities are a list; better to make
              • each distinct responsibility. We'll need to parse manually. Let's identify distinct responsibilities: 1. Designing and implementing exemplary solutions regarding scalability and cost-effectiveness by making trade-offs between opportunity and complexity. 2. Setting standards for codebase health and promoting best practices throughout the organization. 3. Clarifying strategic outcomes and influencing roadmaps and projects. 4. Identifying, suggesting, and driving improvements in your customers' end-to-end experience. 5. Aiding in estimating work for new business with more unknowns and coaching others in estimation best practices. 6. Coordinating across the entire company. 7. Influencing the entire organization to make changes to support your work. 8. Advising teams across the company. 9. Designing a long-term roadmap with no direction. 10. Translating customer and business needs and strategic direction into projects and consistently simplifying high-complexity situations. 11. Coaching and mentoring others in tackling ambiguity. 12. Decomposing strategic direction into projects: Planning, communicating, and executing to solve our most challenging problems. 13. Ensuring alignment with long-term objectives, fostering a culture of informed decision-making and innovation. 14. Anticipating most risks and driving simplification to mitigate risks ahead of time. 15. Escalating issues while solving them in parallel ensuring others are informed. 16. Proposing new organization-level processes to improve key areas such as team throughput, employee happiness, or product engagement. 17. Driving best practices across the organization. 18. Exhibiting exceptional mentoring abilities and fostering a culture of continuous learning and improvement by identifying and nurturing potential in others providing strategic guidance helping develop career paths for team members. 19. Leading projects. 20. Setting the strategic direction for projects or areas of technology, leading multiple project teams, and influencing decision-making at higher organizational levels. 21. Exhibiting strong capabilities in stakeholder management, negotiating, and problem-solving in complex scenarios. 22. Mentoring and developing other leaders within the team, fostering a culture of innovation, and contributing significantly to organizational goals. That seems comprehensive. Now Intimate, Working Familiarity With: list: - Deep understanding of the Android SDK, Java, Kotlin, and relevant development tools. - Expertise with Jetpack Compose and AndroidX libraries, Android open source, community libraries and frameworks, as well as Dependency Injection frameworks. - Strong experience architecting, designing, and implementing native features with an emphasis on high test coverage at all levels – unit, integration, and end-to-end - Experience creating and executing automated tests in CI/CD pipelines using quality gates (e.g. GitHub Actions, CircleCI, Jenkins) - Experience with Cloud Device Farms, and integrating them with CI/CD workflows (e.g. BrowserStack, SauceLabs, Kobiton, AWS Device Farm) - Experience conducting mobile performance testing. - Experience and aptitude for using GenAI development tools and practices such as Cursor, Claude Code, Co-Pilot, etc. We'll put as Skills section. General Requirements list: - 10+ years of software development experience with at least 3 years of native Android development. - Experience with common stack and cloud technologies. Google Cloud and AWS. - Familiarity with databases (e.g. MySQL, MongoDB), web servers (e.g. Nginx) and frameworks and libraries (e.g. Ktor, OkHttp, Square open source, Hilt, Koin). - Knowledge of common communication protocols and tools used in mobile architectures like Protobuf or REST APIs. - Familiarity with common architecture patterns like MVVM or MVI. - Familiarity with software practices like SOLID. - Degree in Computer Science or relevant field or experience. - An eye for visual design and utility. - Command of *nix terminal and tools for general scripting & automation. Nice to Haves list: - Experience with native iOS development. - Experience with React native. - Experience with device virtualization at scale and automated QA techniques. A Bit More Info: - Minimum Base Compensation: $170,000 - This is a full-time position. - Stable Kernel operates a People Before Place Hybrid model, allowing most employees to choose where they can do their best work most days. - Minimal travel is associated with this role. - Our generous total compensation package includes: list of benefits. Benefits list: - Company-subsidized health, vision, and dental plan premium options beginning on the first day of employment - 401k with above-average company matching - Fully paid Group Life, Short and Long Term Disability, and AD&D insurance - Optional Flexible Spending Account and Health Savings Account participation - Voluntary Life, Critical Illness, and Accident insurance - EAP and Health Advocacy program available at no cost to employees and their dependents - $3000+ annual industry educational budget - Paid time off and paid holidays - Access to Perks at Work program featuring a variety of discounted products and services Also note: "Note – We are not sponsoring employment visas at this time. If you are currently in possession of an employment visa, it will need to be effective for at least 3 years from the date of your application for your candidacy for employment to be considered." This is substantive info about visa sponsorship. Should we include? It's not boilerplate; it's a specific condition. Could be part of Requirements or a separate section like "Visa Sponsorship". But we have no predefined heading for that; we could include under Requirements or a note. The instruction: "Preserve ALL substantive information". So we need to include that. Where to put? Could be under Requirements as an item, or a separate section like "Additional Information". Since we only have predefined headings list, but we can create other headings if needed? The instruction says: use

                for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule). It gives examples but not exclusive. It says "Use

                for section headings (e.g. About the role, Responsibilities, Requirements, Qualifications, Skills, Benefits, Pay, Schedule)." Likely we should stick to those headings; but we can also add other headings if needed? It says "use

                for section headings (e.g. ...)" implying those are typical but not exhaustive. Safer to include visa note under Requirements or maybe under a section "Additional Info". But we already have A Bit More Info for compensation etc. Could add visa note there as a paragraph. We'll include visa note as a paragraph under A Bit More Info after benefits

Similar jobs