C++ Software Architect$ 60k/Year ($ 30/Hour for 40 hours of productive work per week) Remote Position Long-term
Do you have the passion and ambition to grow your C++ skills, make decisions based on metrics and challenge yourself on a variety of products? If you can adapt to our roles and can learn new ideas and concepts to solve business problems, then this role may be for you.
Our assembly line teams require highly skilled C++ Architects who are experienced in writing unit tests and are willing to be part of a high performing team where you can expect to learn from your mentors. We have high expectations of our engineers within the organization and only the best and most disciplined in their work are expected to succeed.
Software Architects have aggressive daily and weekly targets set for them and are required to work a standard working week with us. Your output of work is measured daily, both from a quantitative as well as a qualitative aspect. You will receive daily and weekly feedback on your performance which will help you resolve blockers and ensure you are meeting your targets.
-Apparao A, Software Architect Engineer
Our factory is designed to deliver great quality at high pace. In every team that you work in you will be expected to deliver work to a high level of quality.
Your work quality is measured through the First Time Acceptance Rate, which means passing the code review quality bar set by Chief Architects.
As a C++ software architect, you can expect to be a member of one of our central assembly line teams such as a maintenance or unit test team.
The maintenance team is responsible for bug fixing across our 150+ product portfolio. If you are working with the maintenance team you will have an element of product specialization but will mainly expected to be a process specialists. You will ensure that you have all the right information and toolsets available to be able to quickly reproduce a client’s environment, reproduce a bug, fix it, test it, document the fix and send for review. You will be part of the the weekly product release cycles and thereby ensure that bugs get fixed as quickly as possible for our clients and that you are constantly improving the quality of our products.
If you are placed with the unit test team you will be responsible for increasing unit test code coverage for all products. You are expected to have great experience in writing unit tests and will also have daily and weekly targets to work against. Your role is to increase the unit test coverage and work according to the team's standards and quality guidelines. Your work quality is measured through a First Time Acceptance rate, meaning that the Product Chief Architects accept the work delivered by the you and without having to ask for a rework.
In all cases, you will have aggressive daily and weekly targets to work against and you can expect to receive daily and weekly feedback about your performance. The regular feedback is used to help you improve immediately and to help you resolve blockers which may be slowing down your performance
A hiring event is a scheduled online event where all our relevant testing relating to a role is conducted on the same day. Submissions received during the event are graded the following week, and successful candidates notified if they have progressed to the next round which is an online interview with a Hiring Manager.
Provide feedback to the engineering leadership on areas of the software development process which can be improved or automated
Deliver a consistently high-quality product which has a high “First Time Acceptance Rate” from the engineering leadership.
Comply with engineering process playbooks
Ensuring that your output meets the teams quality bars before being passed on to further stages within the process
Meeting your goals, which are set by your manager, on a daily and weekly basis
Escalating issues to your manager as soon as a risk is identified or as soon as you are blocked in your work
Working a standard 40-hr week and mostly Monday to Friday
Keep up to date with the latest software engineering trends
We believe in continuous growth and strive for continuous improvement. We also have an obsessive focus on improving the quality of teams and you will learn how to do this as part of your work in our continuous journey towards improving the quality of products.
You will learn how an organization operates with an automated continuous deployment pipeline; you will learn how innovation and experimentation with technology can help drive productivity improvements, reduce costs and free up your time to do more meaningful and interesting tasks.
You will also learn how to operate in our metrics-driven culture, which is the foundation of our success in measuring and improving every engineering process and product we deliver. This also ties in to the use of WorkSmart Pro, where you can learn how to improve your efficiency during your standard working day. You will learn how our centralized software factory model benefits an organization and gains from economy of scale; the more we grow the more efficient we become.
At the end of the day we want you to become a specialist in some of the parts of our software factory model and allow you to master your technical skills while interacting with the top 1% global technical talent.
Work ExamplesEvery job creates excellent work. We want to show you the types of things you will learn, using real work examples of the processes, training examples, playbooks, projects you will build on the job.
This is a copy of the playbook used by our Auto unit test team. Take a look at the processes and methods used by the team
Feature Project Delivery Framework
This is a work example of a spec for a new feature delivery
If you’d like to create similar playbooks for your own use, please feel free to use our template.
Relevant Files and LinksAs a Senior Manager, you must have extensive experience managing remote teams or onsite teams. Crossover is a global recruiting company, where you will have access to the best talent in the world. As the team manager, you need to develop a team from a group of complete strangers, into a productive unit. Here are some points of view from experts in the customer support industry.
My Goals - Sample Project Goals
This is an example of how your projects are tracked for a quarter
How can a C++ Architect get promoted to new roles?
The learning responsibilities belong to you and are endless. Software Architects are expected to be versatile in various technologies and open to learning new tools and new technology stacks. Software Architects are also expected to be innovative and identify new technologies which can be leveraged to automate manual tasks and therefore freeing up time for more intelligent and interesting work.
What does a Software Architect day look like?
A standard day in this position is typically comprised of the following tasks: a short daily check in with your manager to review blockers which you may have and request assistance when needed, a commitment to your manager on what you are going to achieve that day, potentially a short team meeting to review overall team progress, working on your actual tasks as set for the team.
Once a week you can also expect to have a coaching session on your performance as well as demo your work to our internal or external clients.
I heard you have a tracking tool to monitor your teams, why do you use it?
One of the key objectives of our productivity tracker is for it to be used by our Crossover partners to log time and eventually get paid. We also log information about our Crossover partners to understand what tools and applications they are using. This helps us to build work patterns of our people and identify best practices which we can share with all our teams. As an engineer, we expect that you would be spending at least 80% of your time in your relevant IDE with the remaining 20% spent on email, meetings and reviewing documents.
Do you use Agile?
Like most organizations, we make use of subsets of Agile. The one key difference though is that our teams are highly specialized in the task they do. For example, we have a maintenance team whose only task is to fix bugs on our products. Rather than being product specialists they are process specialists.