A First Factory Employee Journey
The Talent Pool
The greatest competitive advantage we can have as a business is our people, and we are fortunate to have a long-standing, positive relationship with the community that we belong to. It must be a symbiotic relationship where we contribute to the community just as we rely on it for our success.
We were small and unknown in the early days of our operations in Costa Rica. Unable to compete with major employers for senior talent in those days, the team focused on identifying young talent who had not been given the opportunity to prove themselves yet. Many employers limited the breadth and depth of work a junior developer could do, and companies lacked training and support to help those engineers develop their craft. This niche became a key component to First Factory’s growth and ability to build a reputation in the community as an employer that values the individual, cares about professional development, and operates with transparency and integrity. As we grew, we built upon those trainings. We expanded into other technical disciplines, creating discrete, high-yield learning modules and formal months-long mini-boot camps that became the First Factory Academy. Unlike other boot camps, ours are free—actually, we pay the attendees a stipend and, in many cases, choose to bring them on full-time after graduation. These months-long Academies allowed us to help recent graduates bridge the gap between school and work while providing hands-on experience in building and deploying modern web applications.
Finding Our Place
Over the years, we have seen our community interactions increase and now have over 30,000 social media followers. With such a large network in a country of just over five million people, we are continuously informed about technology trends and community engagement opportunities. When needed, we can quickly identify candidates who are ready and eager for change and who see a move to First Factory as a positive step forward in their careers. We rely on the help of our network to connect us even further and as such, we offer the largest standard referral bonus in the country, with $2,000 paid for each successful hire. In giving back to the community we are so reliant on, we offer Tech Talks, seminars, and workshops, covering topics such as AI Trends, CloudOps, resume writing, global conference recaps, and more.
While education establishments in Costa Rica are seeing an increase in female student populations, companies are lagging behind. We support organizations that help young women consider and be prepared for careers in software development, including Rocket Girls and MenTe. We also set salaries based on tiers by role, and our managers work diligently to calibrate raises and promotions based on the skill and experience of the employee. As such, there is no salary gap between our male and female employees. We will continue to support and help shepherd those who seek a career in software development regardless of gender, education, or any other factor.
In addition to social networks and community organizations, we have ongoing relations with university career development departments and boot camps, where we assist by offering paid internships for selected program candidates. These interns work hands-on and side-by-side with our full-time engineers and managers as they learn and contribute to a host of internal, web, and mobile SaaS products that First Factory builds and maintains.
Through these networking channels and with a focus on community stewardship, we maintain an invaluable connection that is the lifeblood of our business and the motivation behind our success.
When Opportunity Knocks
Becoming a larger company is not about ego but, rather, creating new opportunities for our employees and the greater software development community. Growth and diversification have allowed engineers to develop into technical leads and engineering managers. It has opened up new career paths for designers, business analysts, and project managers. This growth has provided opportunities for engineers to work with mobile applications, streaming media, VR and 3D interactive software, DevOps, machine learning, and, most recently, Artificial Intelligence.
When we have a new development opportunity—from acquiring new clients, meeting the growing needs of our existing customers, or the desire to build out our personnel infrastructure further—we send out the message loudly and across various channels.
We first aim to define clear expectations and requirements for the role. We meet with our clients and prospective customers to discuss their needs and “nice-to-haves.” We aim to understand their existing team dynamics and communication channels. We inquire about their development roadmap, key milestones, and other factors that would assist in finding the right fit. We often leverage existing job descriptions from our customers and customize them to better convey our company culture to candidates while illustrating the keys to working seamlessly with our client’s team. There will always be a balance of skill and personality compatibility, and we want to ensure that every First Factory hire is positioned and prepared to integrate with their first client. While we most often hire for the needs of our clients, we are primarily hiring a First Factory employee—someone we can see as an employee of ours for many years to come, not just for this initial assignment.
After we draft the job description, we first reach out to our existing network. Within this group, we have ongoing interactions regarding future opportunities. By having regular exchanges with these pre-qualified candidates, we can determine from this pool who is still looking for an opportunity and present them to clients quickly. From here, we post the job details on our website, promote it through social media channels like LinkedIn and Facebook, and notify the community about the new opportunity. For certain roles, we will send newsletters with the announcement and details, and we will also identify several former applicants who may either be a good fit themselves or have colleagues and friends they may want to refer. Interested candidates can submit their application through LinkedIn or directly on our website, at which point every applicant’s resume undergoes an initial screening.
Setting the Right Expectations
We generally have two different hiring flows: one for our Academy (which asks more of the junior applicants in the first stage) and one for the other direct hires. The recruitment team meets with company leadership and hiring managers twice weekly to provide updates on the talent pipeline, present prospective candidates, and solicit feedback. Each applicant receives detailed communication every step of the way; they are not lost in the system or ignored by the recruitment team. Applicants who make it through the initial screening will have video calls with a member of our recruitment team. During this HR Call, we learn about the applicant’s passions and goals. We listen to their motivations for seeking new opportunities and ask them what they feel they need from us, as their potential new managers, to succeed. They are choosing their next employer in the same way we are evaluating them as our next hire. This information about their needs is valuable for us, not just in finding the skills to align with the current job opening but also in identifying who will most likely stay with First Factory for the long haul. Taking the time upfront to consider a career path and the support we would provide an applicant is critical to how we have achieved one of the lowest turnover rates in the industry and an Employee Net Promoter score in the top five percent of all companies globally.
Applicants who move beyond the HR Call will meet with one or more members of our Engineering Management team or the department manager for non-engineering roles. These video interviews are technical yet personal. Our team covers theoretical knowledge and asks behavioral interview questions to determine how the candidate approaches situations. The technical challenges presented in the interview are evaluated less on whether the solution is technically correct and more on whether the approach to solving the problem was well thought out and the solution was efficient. For us, the technology is secondary. Technology continues to change and does so rapidly. The clients and projects will change. The technology an employee will be exposed to may change, as may their interests. As such, it is imperative that they possess a passion and ability to learn and that they demonstrate the most important skills for any engineer: communication and problem-solving. The interviewers use an internally generated set of questions pertinent to the technologies for which they are interviewing. Each of these topics has a rubric for point-by-point evaluation along with explanations that define good responses, and we often include common poor or incorrect responses as well. These may include how one handles application state management in a large-scale React application, describing the difference between App Router and Page Router for NestJS, and defining the Actor Model and how it relates to distributed systems in .NET. These, of course, are just a few examples, but this framework of questions used by the team of technical interviewers brings consistency to our evaluations across candidates and ensures that we do not miss key assessments. The results of these knowledge-based assessments and notes about the applicants’ strengths, weaknesses, and potential fit for the identified team are recorded and shared with internal stakeholders.
Client Placement
After reviewing the interview results, our Talent Placement Coordinator summarizes the feedback. If the team agrees that the applicant is a good fit for the client, the coordinator will work with the client to schedule interviews for selected applicants. In almost all cases, we also draft a mini-bio that is meant to bring to life the individual applicant and their experience so that the potential interviewers have a better sense of who they will be talking to. Before the interview, we share the job and client details with the candidate. We identify technologies and versions used, the nature of the work, the industry the client is in, and insights into who they will be meeting with and what to expect. Whenever possible, we conduct interview prep calls. Interviewing is an art unto itself; not every great candidate or employee is a great interviewee. We attempt to break down the stigma that an interview is akin to a test, that the candidate is being graded and judged. We prefer to approach the interview as a discussion between people with a similar goal: to get to know each other and see if the opportunity is the right fit at the right time for both parties.
Sometimes, of course, even proper preparation cannot overcome some interview jitters—but the more we can define expectations and prepare, the easier it will be. And each applicant or current employee will improve from practice and the feedback we provide them after the interview. Everyone is given feedback at each phase of the evaluation process, from our HR screening calls to our more intensive technical assessment calls and our client interviews. Oftentimes, our talent placement team is on the client video interview calls with the applicants. They ensure both parties arrive, make introductions, establish there are no technical issues, and take notes during the call. These notes, along with the post-interview client feedback, will be shared. In a job interview, we all want to make a good impression and find feedback to be a valuable tool for understanding how we may be meeting expectations and our areas of improvement.
Should a client pass on an applicant, we will assess the applicant’s overall performance and determine if another opportunity may be better suited at this point. If we determine the applicant would be a good addition to a different team at a future date, we will communicate that and stay in contact as new roles open. We serve as a kind of talent agent for the applicant, keeping an eye out for the right opportunity, even as their interests and needs may evolve. This strengthens the bonds between First Factory and the development community and allows us to move more swiftly when filling new requisitions.
If we decide to proceed with an offer to an applicant, we schedule a phone call to discuss the offer details and answer questions, which could be anything from logistics to equipment issuance to benefits. We communicate verbal agreements internally and send out a formal signed offer letter with instructions on what other information is required by the start date. Once the offer letter is returned with the new hire’s signature, we close the requisition, notify the client, and follow through with the necessary contractual paperwork. One week before the employee’s start date, we provide a welcome packet that includes basic information like directions to the office, access to our internal LMS, Intranet, and HRIS, links to onboarding documents, and an agenda for day one.
Ramping Up
On day one, the new employee will meet with our People Operations Manager, who will provide general information about the company, insurance policy, credentials, and payroll details and will be there to answer all questions and guide the new addition through their first day. It is important for us to share more about First Factory’s history, values, internal procedures, and internal tools. New hires will be introduced to their managers. Engineers will most likely have both a Client Experience Manager and an Engineering Manager on their team. Managers and team leads will work to ensure access to client systems is provisioned, the new hire is added to team and client meetings, and on day two, we transition from company onboarding to team integration.
One of the managers will provide an overview of the client and the work. They will explain what level of support the new employee can expect from their managers and discuss expectations around status reports, time off, communication, and meetings. A manager will also hold monthly one-on-one meetings (or more frequently, if required) with their employees, during which the employee will be free to discuss what is going well and ask for guidance or assistance on continued professional development. These individual meetings are primarily for the employee to leverage their manager as a resource; these are not status update meetings. Managers will address concerns, discuss approaches to situations, share experiences, and recommend courses or certifications that will help the employee achieve their goals.
In most cases, we work with Agile methodologies and work in sprints. We host DSUs, have sprint planning, provide demos often, and conduct retrospectives. We are not locked into holding all of these ceremonies, and we may even vary the schedule mix as the product matures and priorities shift. What is important is that the team stays in lockstep and recognizes that we can only be successful if the team achieves its collective goals. Aside from these ceremonies, there is a monthly team meeting where we all get to assess how we feel about the team dynamic, client communication, team support, quality of work delivered, velocity, and check-in on upcoming release dates, milestones, and new technologies.
Formal Reviews
At First Factory, we treat each employee as an individual. We do not use scores to rank or otherwise rate employees, as this diminishes the value of each individual.
Along with our technical leadership team, we have developed a variety of career tracks for employees to use as a guide in their development and to help set expectations. It’s important to note that although, on paper, the “track” is linear, the reality of career development is that it is most often non-linear as new technologies, interests, and opportunities arise. This wandering path is common and tends to result in individuals gaining additional perspective, insights, and skills.
Our review process is designed to be lightweight and ensure employees can regularly discuss their career goals and development paths with a manager. We schedule bi-annual reviews for Junior Developers (first 24 months) and annual reviews for Mid-level and Senior Engineers. Employees are asked to complete a brief self-evaluation form before the review meeting. This is shared with the relevant managers and used as a guide for discussion. Before the review, we evaluate salary and job title to see if any adjustments are warranted. We also request feedback from the client, and if the employee is a team lead, then we will ask for feedback from their team members as well.
It should be noted that raises and promotions are not exclusive to the review timeline and can be granted off-cycle should the situation warrant it.
A Sense of Community
We are proud to be active participants in the development community and see our role as community members, advocates, and mentors. We love what we do and enjoy coming to work every day because of the people we get to work with. We learn from each other, challenge each other, and build outstanding software together. As a result, we make extra effort to have meaningful interactions: we treat each other respectfully, are highly transparent, and offer clear and tangible feedback. We will never be perfect; we make mistakes and learn from them. We are never satisfied; we can always find ways to improve. And we are never alone; there is a large and caring community that we all belong to.
We will continue to honor these relationships in a place we have fallen in love with. We are truly fortunate to have been so welcomed by the community all these years.
Take the step and find out if First Factory can be the right fit for your next career move.