Are you the best software architect in your company? Can you identify patterns in complex systems and see ways to make them 10x simpler? Do you enjoy designing software that maximizes use of existing code? Do you wish you could expand your technical career without requiring more and more time on HR and project management? If so, you'll love our approach of driving the direction of products starting with the core technology.
In this role you will join a very passionate and experienced team responsible for all of the important technical decisions on every product in our large portfolio of enterprise software solutions. You'll spend your time making the most important technical design decisions, such as:
- What are the core data structures used by the app? Why were they chosen? How are they mapped or applied to the domain of the problem? What were the tradeoffs or alternatives?
- Are there any important or valuable algorithms? What insights led to choosing them?
- Are important third-party components/technologies used? Why were they selected? Are they the right ones today? Were they ever?
- Are there any components of the system that create valuable and differentiated capability relative to competitors? Why? (we call this "TechDiff")
- What was the design and reasoning behind the important internal and external APIs?
- Identify and explain the rationale behind important technical dependencies or limitations this product has. Can you think of new and creative ways to overcome them?
- Can the product be broken down logically into smaller, more manageable components? Are there well-defined interfaces, or seams, between those components? Or are they all interconnected?
- What is the critical opinion of a fresh set of eyes when looking at old decisions? Are there architecture or design anti-patterns present in the fundamental technical decisions?
In this role you will also learn and practice the high-impact skill of clear written communication, as this enables your scale and broad impact across the organization.What You Will Be Doing
Each week you will have a different design problem to work on and technical spec to create. The assignments may make iterative progress on a larger problem, or be smaller and targeted design problems. You will have the opportunity to learn and work on a wide variety of products with distinct tech stacks and business domains so you will be continuously challenged. You will uncover the "high-order bit" decisions by interviewing other product CTOs, analyzing the data structures and analyzing code and design documents. Finally, you will make the important design decisions that specify how to rearchitect products in a cloud-first way on systems like AWS and GCP, and how leveraging the latest powerful cloud services can enable ten-fold improvements in the product.What You Won't Be Doing
You will not be making technical decisions based primarily on saving money. You will focus on designing the best solution for the problem, in the simplest way possible, and with maximum leverage of existing assets. This is a strategic technical design position - making the important technical decisions and providing clear leadership for our engineering organization to execute on. Therefore, in this role you won't be:
Senior Principal Software Engineer Key Responsibilities
- Participating in daily scrum meetings or providing day-to-day direction to an engineering team
- Making low-level decisions about what coding language to use or choosing frameworks and libraries
- Performing code reviews, debugging or investigating bugs and outages
- Talking to customers to develop a backlog of features they wish our products had
- Directly managing people
- Make clear, simple, and technically superior design decisions
- Simplify designs that others have made complicated
- Apply a particularly high-quality bar to what we believe are the core technical design decisions - data structures, algorithms, architectural patterns, and the leverage of third-party implementations
- Utilize other architects as force-multipliers, mentoring them by providing high-quality feedback on their work
- Synthesize your decisions and designs into clear and structured written specs
- A university degree that includes the study of data structures and algorithms
- At least 2 years experience with a commercial software company shipping production code
- At least 5 years of experience making core architecture and design decisions; such as data domain modeling, application of design patterns, and design using third-party components.
- The ability to simplify complex ideas and communicate them with clear, logical thinking.
- Experience designing for Amazon Web Services, Azure, or Google Cloud Platform.
- Experience redesigning existing products on top of serverless cloud services.
- Experience crafting simple but meaningful messages for sales and marketing teams.
Compensation and growth:
As a 100% remote organization, we pay the same rate to everyone in a given role regardless of prior compensation history or geographic location. For simplicity, we make weekly payments at your full hourly rate and do not incorporate any variable pay components or subsidized benefits. It is about as clear and simple of a compensation plan as you can imagine.
This SVP-level position has a rate of $200/hr or roughly $400k/yr, and our desire is long-term career opportunities, not short-term relationships for "side gigs".
This role is also part of a Technical Product Management growth path. The step just below exercises similar skills but at a different level of scope and is a VP-level ($100/hr) role. The growth path for this SVP-level role is to EVP-level ($400/hr). You can find all of our job listings on our jobs site: https://jobs.crossover.comAbout DevFactory
DevFactory is a division of Trilogy, one of the world's largest privately held enterprise software companies. Since 2008, Trilogy has been acquiring enterprise software firms, turning them around, and delivering phenomenal value for their customers. DevFactory provides R&D services to all of Trilogy's businesses using a unique centralized model for software development and delivery.
DevFactory has a fully-global, fully-remote workforce and has partnered with Crossover to administer our talent screening and global workforce management.What's Next?
There is so much to cover for this exciting role, and space here is limited. Hit the Apply button if you found this interesting and want to learn more. We look forward to meeting you!
What to expect next:
- You will receive an email with a link to start your self-paced, online job application.
- Our hiring platform will guide you through a series of online "screening" assessments to check for basic job fit, job-related skills, and finally a few real-world job-specific assignments.
- You will be paired up with one of our recruiting specialists who can answer questions you might have about the process, role, or company, and help you get to the final interview step.
If you do not receive an email from us:
- First, emails may take up to 15 minutes to send, refresh and check again.
- Second, check your spam and junk folders for an email from our partners at Crossover.com, mark as "Not Spam" since you will receive other emails as well.
- Third, we will send to whatever email account you indicated on the Apply form - by default, that is the email address you use as your LinkedIn username and it might be different than the one you have already checked.
- If all else fails, just visit https://jobs.crossover.com directly, search for this job, and click "Apply". You will be prompted to reset your password if you already applied using LinkedIn EasyApply.
Crossover Job Code: LJ-3370-GB-Bristol-SeniorPrincipa.025