Frequently Asked Questions
Each semester, we work with a number of industry-leading tech companies to develop a project together. What the project is can vary - among other things, we’ve built full-stack web applications, contributed to large databases management systems, and developed many machine learning models. What you get out of a project will be a solid grasp of software development, having built and delivered a tangible product with a team of engineers end-to-end.
During our recruitment process, we look for candidates who are able to demonstrate a strong commitment to the club and mission, effectively communicate and collaborate with others, and contribute socially back to our organization. Codebase works with a diverse range of technologies, so while an aptitude for computer science is important, we’re not looking for any particular skill set or background - our members come from all sorts of experience levels and have all sorts of passions and interests. We just want developers with the passion and drive to learn something completely new! Our Base Behaviors are a great place to start!
As a developer on a Codebase project, you’ll be working with 6-8 other members and 2 project managers to complete one project. Each project typically spans about 12-15 weeks and includes a mid-semester deliverable (you can think of these as “due dates”) at around Week 6 as well as a final deliverable at around Week 12. You will also meet with your points of contact at the company you are working for on a weekly basis, to share your progress and get feedback. We will provide resources and tutorials to help you ramp up to understanding and learning the essential skills needed for the project. While time commitment varies between projects, developers should expect to put in anywhere from 15-20 hours of work per week.
A big part of being a Codebase member is being involved in the social environment, both during club-wide events and within your project team. Within your project team, we take the same ethos towards socials that we take toward technical growth: you get out what you put in. Outside of worksessions, teams have fun socials throughout the semester, which typically includes your own team retreat later in the semester, and you will end up very close with your team at the end of the semester. We strive to make each project team a source of constant support for our developers, whether that’s in terms of your technical growth, professional development, or just to have fun! As a club, we have tons of fun events outside of weekly general meetings (and even during them) where you get to bond with the entire club, such as a club-wide retreat at the beginning of the semester. Members of the club also enjoy hosting "Codehosts," where a member (or members) host a gathering to share their passions, whether that be making tacos, playing poker, or having a fun musical night. All in all, the social experience is a huge part of Codebase. You will bond with so many cool people in every aspect of the club, and find tons of close friends here :)
The mentored track is intended for students with an interest computer science who don’t have a lot of experience yet. Along with mini projects to start, the mentored project is to build a website for a nonprofit organization with the goal of teaching students the fundamentals of full stack development. You will also follow the CRUP program throughout the semester to help you learn about different parts of tech such as algorithms, databases, and machine learning, to prepare you for client projects. Meanwhile, our client projects are for students with demonstrated skill in computer science and software engineering, and can be any kind of project– from fullstack to machine learning, databases to backend. Client teams work with tech companies to deliver a real product by the end of the semester, starting with a ramp up to get familiar with industry development and the background knowledge and skills needed to complete the project.
This is a very common question, so we have a more comprehensive guide below to guide you through making a decision! An important note: we might move applicants between tracks if we find that your skillsets and background are a better match; this won’t negatively affect your application. If you’re still confused about which track to apply to, feel free to visit us at our recruitment events or find us during tabling to help you out! https://berkeleycodebase.medium.com/how-to-choose-a-track-mentored-vs-client-38b56f11ce8
The time commitment averages 15-20 hours a week. For the majority of our organization's members, Codebase is their main extracurricular activity. Ultimately, what you end up getting out of Codebase depends on how much effort you want to put in! A week for a mentored developer might look like: • 1 planning meeting (2 hours) • 2 whole-team worksessions (2 x 2 hours) • 2 small-group worksessions (2 x 3 hours) • asynchronous work (~4 hours) • 1 stand up (~30 min) • 1 CRUP session (3 hours) • 1 CRUP homework (2 hours) + a weekly social (not included in work time) A week for a client developer might look like: • 1 planning meeting (2 hours) • 2 whole-team worksessions (2 x 2 hours) • 2 small-group worksessions (2 x 3 hours) • asynchronous work (~3 hours) • 1 stand up (~30 min) + a weekly social (not included in work time)
We know that joining a new community can be stressful and hard, and we want to make sure that all our developers find a community they feel comfortable growing in. We always seek to make our project teams into an ongoing source of support for our developers. Whether it’s about your technical growth or personal development, your fellow developers and project managers are always there to provide guidance, support, or just someone to talk to. In terms of technical growth, every project has a ramp-up project at the start of the semester that is designed by the project managers to introduce the developers to the new tech stack. Codebase projects involve a diverse range of technologies, and we don’t expect that our developers have any specific prior experience with them; your PMs will always be there to support you throughout the process. In terms of your professional development, all our developers are encouraged to participate in our mentorship program where you’ll be assigned a mentor to get one-on-one guidance to guide you through discovering and developing your career goals. We also have a strong alumni network with a diverse range of experiences, who you can always reach out to to learn more about!
Given that we'll be operating in-person, we won't have the bandwidth to support remote members. Since we can't promise to offer the same engaging experience to remote members, we'd strongly encourage you to apply in a future semester when you're back in Berkeley. If you have any questions or concerns, please feel free to email us at contact@codebase.berkeley.edu or fill out the "Contact us" form.
Online Application To apply to codebase, you should submit an online application using the link above. The application is the same for both client and mentored, but please be sure to check off one or the other in the application. You cannot apply to both! Initial Interview After the application deadline, we will review all online applications and invite a subset of applicants to the initial interview. Technical Interview After reviewing initial interviews, we will reach out to applicants invited to the technical round. Final Interview Finally, after the technical round, we will reach out to applicants invited to the final interview and after reviewing final candidates, we will reach out to our newest codebase members! We know that applying to clubs, including codebase, can be a long and draining process so we aim to make the experience as seamless and friendly as possible. We genuinely appreciate everyone who takes the time to apply!
We understand that early in the semester is a busy time for many, so we try our best to get back to our applicants as promptly as possible. The entire interview process takes a week after the written application due date. This means that there is a very fast turnaround between each step of the process, and we appreciate everyone for being on board and ready for that. At each interview round, your interviewers should provide a timeline for when you can expect an update, barring any unforeseen circumstances. Feel free to ask about the timeline during your interview as well!
The initial interview* is a quick in-person 15-minute chat so we can get to know you better, and what you’re looking for in a campus community! Expect a casual conversation about your background and interests, and a chance to ask us any questions you have about Codebase. *By invite only
The technical round* is a 45-minute call where you’ll be asked to solve problems of a technical nature, including both coding and non-coding questions. We’re interested in your unique approach to problem-solving and communication! *By invite only
The mentored technical interview does include a coding component! We don’t publish any details on what kinds of questions will be asked to be fair to all our applicants, but in terms of technical knowledge, we only require that our mentored applicants have completed the first two weeks of CS61A, or have equivalent knowledge in writing Python. Specifically, this consists of the first two modules of the class: Functions and Control. More generally, the technical interview isn’t like an exam: we aren’t grading you on whether your code matches a solution, but rather on your ability to problem solve and communicate! We don’t expect any kind of specific preparation, and we want to see how you solve problems your way.
The client technical interview will include a variety of coding and design questions; we require that our applicants have knowledge in either Python or Javascript. Prior to the interview, we send you a resource to help you prepare for the interview. However, we will not provide any specific details on what kinds of questions will be asked to be fair to all of our applicants. A tip: a big part of the technical is for us to learn more about your unique approach to problem-solving and communication. Talk throughout the interview, even if it might seem very ‘stream of consciousness’ or irrelevant; we want to hear whatever you’re thinking!
The final round* is a 30-minute interview so we can learn even more about you, your passions, and how you might fit into Codebase! This is also another chance to ask us questions and learn more about the club. *By invite only
If you have extenuating circumstances that prevent you from being able to conduct the interview process in person, you can respond in the email invite to set up a virtual interview. However, due to our tight recruitment timeline, we are unable to offer alternate interviews at times outside of the ones offered in the invite.
No! Once you join the Codebase community, whether as a client developer or a mentored developer, you will always be a part of our club! Our members are often developers in project teams for 2-3 semesters before taking on leadership positions within our club. If you join as a mentored developer, you would return as a client developer the following semester. If you join as a client developer you would return as a client developer again or in a leadership role.