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:
- 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
Principal Software Architect Key Responsibilities
- 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
Basic Requirements
- A university degree that includes the study of data structures and algorithms
- At least 2 years of experience shipping production quality code
- At least 7 years of experience making the important architecture and design decisions on software projects, such as the application of architecture design patterns or significant open source technologies
- At least 2 years of experience as the decision-maker for design decisions involving the use of cloud computing services (primarily AWS)
- Experience as the most senior decision-maker regarding technical design decisions for software products for a dev organization of at least 50 people
- The ability to simplify complex ideas and communicate them with clear, logical thinking
Nice-to-have Requirements
- 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 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 Cloud Architecture and Design growth path. The step just below exercises similar skills but at a different level of scope and is a Subsystem CTO level ($100/hr) role. The growth path for this Product CTO level role is to Portfolio CTO level ($400/hr). You can find all of our job listings on our jobs site: https://jobs.crossover.com
About Trilogy
Hundreds of software businesses run on the Trilogy Business Platform. For three decades, Trilogy has been known for 3 things: Relentlessly seeking top talent, Innovating new technology, and incubating new businesses. Our technological innovation is spearheaded by a passion for simple customer-facing designs. Our incubation of new businesses ranges from entirely new moon-shot ideas to rearchitecting existing projects for today's modern cloud-based stack. Trilogy is a place where you can be surrounded with great people, be proud of doing great work, and grow your career by leaps and bounds.
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.
Important! 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 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 reset your password by visiting https://www.crossover.com/auth/reset-password if you already applied using LinkedIn EasyApply.
Crossover Job Code: LJ-3370-SG-Singapor-PrincipalSoftw.026