The Collab Lab

The Collab Lab

Software Development

Where early career developers learn how software teams work.

About us

The Collab Lab helps recent bootcamp grads learn the collaboration side of software development. Participants work on small teams building web applications. The focus is on pair programming, writing great pull/merge request messages, over-communicating in Slack, etc. Collab Lab is volunteer-driven and free for participants.

Website
https://the-collab-lab.codes
Industry
Software Development
Company size
51-200 employees
Headquarters
Portland
Type
Nonprofit
Founded
2019
Specialties
HTML, CSS, JavaScript, React, Firebase, Pair Programming, Agile, and Collaboration

Locations

Employees at The Collab Lab

Updates

  • The Collab Lab reposted this

    View profile for Brianna B., graphic

    Software Developer 🔎 | { skills: [typescript, react, python] } | Problem solving is my degree 📜

    Week 3 of The Collab Lab completed ✅ This week the team did amazing on both our issues and communication on code reviews and async! We really worked with each other on the issues to bring forth code we could all be proud of and add the ability to share the lists with existing users and filtering the lists! We did that all of these amazing changes after moving our entire codebase to #Typescript! In addition to working on these issues I noticed that a new user could come to our app and essentially navigate the app while logged out. They weren't seeing data but they were able to see the app. It felt like the app was going against the expected norm of how an app with a login and authenticated usage works. So I wanted to try my hand at adding a #Github Issue for our project, and see what kind of solution I could come up with. With the idea initially being that the user information being User or null would be utilized to show and hide the nav bar component. After think about how the app would function and what we want with type handling the code changes ended up: - Making sure the navigation bar is hidden if a user is not logged in (doing a UI perspective of communication of what is and isn't possible). - Redirecting a user to the homepage if they are not logged in back to the home page even if they try to manually navigate to the pages (which automatically takes the user to the homepage on signout). - Created the "page not found" and redirect to homepage functionality if they attempt to navigate to a route that doesn't exist. - Created our protected route component that handles the null type of our user type to ensure that only authenticated users can use the route and will handle the redirection of the page. - Utilizes React Router's Outlet component and useOutletContext to pass the user information and remove the need for prop drilling in nested protected routes across the code base. Below are the links to both the issue proposal & the merged PR: ISSUE: https://lnkd.in/e3MTKc2J PR: https://lnkd.in/e8FaE3us #softwareengineer #softwaredeveloper #thecollablab #reactrouter #react #collabie

  • The Collab Lab reposted this

    View profile for Veronika Kolesnikova, graphic

    Software Developer | MERN | Committed to Excellence

    It's been three weeks since I joined The Collab Lab, and I wanted to share some of the exciting experiences I've had so far: Pair Programming 👯 Pair programming is a software development technique where two programmers collaborate on a single task. Each week, I pair up with one of my teammates, and we take turns as the "driver" and "navigator." This setup not only enhances code quality but also boosts productivity and knowledge sharing. Plus, pair programming is a lot of fun! Sprints 🏃♀️ I really enjoy sprints because they help me focus deeply on a specific problem. At the same time, I find it important to maintain a broader perspective, and taking breaks refreshes my thought process. I appreciate the structure of sprints, particularly the strict deadlines, which are crucial for discipline and timely delivery. Code Reviews 🗒 This has been my favorite part! I’m eager to learn and improve, so receiving feedback on the quality of my code is invaluable. Code reviews are paramount, and I’m grateful for every piece of advice our mentors provide. From ensuring sustainable responses to maintaining type consistency, considering edge cases, writing descriptive commit messages, and thoroughly reading documentation, every detail helps me grow as a developer. Thank you to our mentors 🙏 for guiding me through these nuances! Retrospectives (Retros) 📈 I recently participated in my first retro, where I reflected on my work, acknowledging both my successes and areas for improvement. I found the retro to be crucial for our team's growth, as honest feedback in a safe space like The Collab Lab helps us all improve. In conclusion, a huge shout-out to my peers and mentors—here’s to continuous learning and growth, to infinity and beyond! 🚀

  • The Collab Lab reposted this

    View profile for Huda Mabkhoot, graphic

    Frontend Developer | React js | MBA in Project Management

    I’m excited to share that I’ve been working on an innovative “smart” shopping list app with The Collab Lab for the past month as part of team TCL-79! 🛒✨ This project is especially significant as it marks The Collab Lab’s final cohort, making this experience all the more meaningful. The journey has been fantastic so far. Our team operates in pairs and rotates weekly, which brings fresh perspectives and enriches our collaborative efforts. It’s been incredibly rewarding to learn from different teammates and see how these varied viewpoints drive our innovation. On the technical side, I’m deepening my expertise with React and Firebase, honing my communication and problem-solving skills. Each week presents new challenges and opportunities for growth, which has been both exciting and enriching. Looking ahead, I’m particularly enthusiastic about a planned feature where the app will intelligently track purchasing patterns and prioritize items you’re likely to need soon. This feature will transform the shopping list from a simple list into a smart tool that adapts to your buying habits, enhancing your shopping efficiency. Overall, this project is providing me with invaluable experience in team collaboration and effective communication. It’s also been a great opportunity to engage in demos and showcase our progress. I’m thrilled to be part of this final cohort and am eager to see where this journey will take us! 🌟

    GitHub - the-collab-lab/tcl-79-smart-shopping-list

    GitHub - the-collab-lab/tcl-79-smart-shopping-list

    github.com

  • The Collab Lab reposted this

    View profile for Ross Clettenberg, graphic

    Adaptive software developer | C# | .NET | MongoDB | Express | React | Node | PostgreSQL | ASP.NET MVC

    Embracing TypeScript in a Struggle Snuggle The Collab Lab, #77 Week 3: August 25 – August 31, 2024 This week at The Collab Lab, our team took a big step forward: we voted to start using TypeScript in our project! Here’s why we made this decision and how it’s already making an impact: 1.     Becoming More Hirable: All of us agreed that TypeScript is increasingly in demand in the tech industry. There are a lot of jobs in Oklahoma that want you to know both TypeScript and .NET in the same job description! By adding TypeScript to our project, we're not just making our codebase stronger; we’re also boosting our own marketability as individual developers. 2.     Learning Together: Adopting a new language or framework can be daunting but doing it as a team makes a huge difference. We held an extra “Intro to TypeScript” Office Hours meeting this week, diving into TypeScript variable naming conventions, data types, and versioning. We also talked about TypeScript tutorials and tips. I don’t want to get caught up in tutorial video hell, so I was thankful for that. The best part? We got to see real examples of refactored project code in TypeScript! 3.     Building Confidence: Learning TypeScript in a supportive environment with low stakes like The Collab Lab allows us to experiment, make mistakes, and grow together. One of our mentors graciously did the work of refactoring our project into TypeScript already, helping me ease into using it by asking questions and researching lines of code.  The positivity and encouragement from our team mentors has been incredible! 4.     Collaborative Decision-Making: Our decision to use TypeScript wasn’t top-down; it was made collaboratively in our weekly sync meeting on Sunday, with everyone’s input! This approach fosters ownership and commitment to our shared goals. 5.     Future-Proofing Our Skills: In tech, you can’t afford to stop learning. As a team, we decided that there’s no better time than now to learn something new. And why not learn it together? Since adopting TypeScript, I've already experienced some exciting progress! This week, I have been perusing through the fundamentals on https://lnkd.in/g3JUwc6n. My programming partner and I were able to successfully pair program and solve this week’s issue (As a user, I want to be able to invite others to an existing shopping list)! Additionally, I was able to refactor our form and its logic into its own component, which improves reusability. I'm excited to continue this journey, explore TypeScript's features, and become more versatile as a developer! #TypeScript #WebDevelopment #Collaboration #DeveloperLife #ContinuousLearning #CareerGrowth #Teamwork #Mentorship #CodeCommunity #FutureProof #TechSkills #FrontendDevelopment #SoftwareEngineering #Innovation #Refactoring #CodeQuality #PairProgramming #TechCareer #ProgrammingLife #TechCommunity #SelfTaughtDeveloper #CodeWithConfidence #TechIndustry #BuildInPublic #TechLearning

    Courses

    Courses

    typescript-training.com

  • The Collab Lab reposted this

    View profile for Doribel T., graphic

    Bilingual Software Developer | Immigration Legal Support | Higher Education Student Wellness Specialist

    I’m incredibly grateful to be part of The Collab Lab’s final cohorts. I’m especially touched by the dedication of our mentors (Megan Sullivan, Jenny Takahara and EJ Mason) who take on the monumental task of breaking down complex problems so that we can collaboratively explore them step by step 🤍 Last night’s workshop, designed by our mentors, was truly special. They provided us with source code, and we used VSCode Live Share to create tests and fix bugs. I learned so much from observing how they approached writing these tests. Since the session was spontaneous, there were a few bumps along the way—something I remind myself is totally normal. It was also awesome to see their professional “Googling” skills in action to get unstuck. It was fun to watch them pair-program while discussing the "whats" and "whys" behind each test. They verbalized their thought process, shared pieces of wisdom, and invited us (the mentees) to provide observations and ask questions. For our React Web UI testing, we used the jest-dom library to test the DOM. Jest matchers allowed us to write precise expectations for our unit tests, and we imported the screen object for querying. The biggest takeaways for me were: 📨Tests should mirror how a user interacts with the DOM. 📨Follow the "Given, When, Then" structure for testing. 📨JSDOM does not play well with CSS nesting. Before joining the workshop, I listened to a Plum Village App podcast episode that discussed the stories we tell ourselves and how we seek evidence to support these narratives. I did my best to approach the workshop mindfully rather than focusing on the “shoulds” stories that can cloud my learning journey and I felt much more relaxed, which made it easier to learn, ask questions and actually have fun. P.S.: My fellow mentees/developers (Shuveksha Tuladhar, Stacy D. and Nicholas Rocco) are incredibly knowledgeable, and I’ve enjoyed the rotation process, which has allowed me to collaborate with each of them on different parts of the project. Whoever gets to call them colleagues in the future will be truly fortunate!

    • No alternative text description for this image
  • The Collab Lab reposted this

    View profile for Brianna B., graphic

    Software Developer 🔎 | { skills: [typescript, react, python] } | Problem solving is my degree 📜

    The Collab Lab I have defeated your week 2! This week was a bit heartier in the code work that is done, but it was another strong week with the team. The Shopping List App, actually lets users add various lists and items to those list. Bringing the functionality of our app up an entire level. The TCL-77 #collabie devs increase theirs skills a bit more! I got into a few great #pairprogramming sessions with Ross Clettenberg to update an API call to properly use add items to the #Firebase DB, not just console.log the empty info. While also building a form for the user to be able to do the submission. We had a lot of amazing feedback from our teammates (Falak Z. and Maha A.), and Tanner Gill to really allow use to push to think about both the current code, the acceptance criteria and the future of the code. It really allowed our code to have a more robust and maintainable addition to the code with adding util functions for repeated trimming of inputs, making sure the form is navigable with keyboard through proper labeling, how to think about too much complexity vs proper flexibility of future iteration, and so much more. I really appreciate the opportunity of The Collab Lab, my team and the mentors. When coding alone there are little to no comments on my PRs and it has been amazing to get such intelligent, kind and thoughtful comments that give me the opportunity to absorb new knowledge, grow and show off the skills I have. It truly has been a great week. A small moment of merge conflicts but the new code has been successfully merged in and a small demo of the teams changes on main is below! #softwaredeveloper #softwareengineer #collablab

  • The Collab Lab reposted this

    View profile for Ross Clettenberg, graphic

    Adaptive software developer | C# | .NET | MongoDB | Express | React | Node | PostgreSQL | ASP.NET MVC

    The Collab Lab, #77 Week 2: August 18 – August 24, 2024 The second week of The Collab Lab started with a bang! My first week’s programming partner was indisposed in the morning. We used the LiveShare extension, and she was the one driving. I was able to attend the weekly sync meeting and present our changes the best I could—I was at least able to explain the code and show that the components exist on the screen even if they were rendering blank list items. I met with my previous programming partner after the meeting. I wrote comments on the last changes in the pull request, and she committed and merged those changes with the main branch, and everything worked fine! During the weekly sync, we also had a sprint retrospective, talked about this last week’s issues, and who our new pair programming partners would be for this week. Later that day, I would read over my assigned issue (As a user, I want to add a new item to my shopping list so I can start recording purchases) and read about our app’s API while watching the Slack chat for our pair threads so I could touch base with my programming partner—this week was going to be a doozy! Highlights from Week 2: Pair Programming Success: On August 19 I got in touch with my pair programming partner! I just wanted to touch base and set the expectation that I would have a lot of doctor’s appointments and medical stuff done this week without accidentally violating state or federal HIPAA laws. My programming partner and I navigated code review changes, merged our pull request, and made sure our app was up and running smoothly! We leveraged the LiveShare VS Code extension, pull request comments, and Slack to ensure seamless collaboration even when I needed to take a step back for my health. Building with Purpose: We dove into creating a form element for our app, which included input fields and radio buttons, all while refactoring existing functions to work with Firebase. We used the LiveShare extension to get the form element done—this includes item name, and radio buttons for when to buy the item again (Soon, Kind of soon, and Not Soon). We also tried to use the hook in the Firebase.js file—this file is acting as middleware between our app and Firebase. I’ve done enough "code alongs" to know, that before overthinking it, just try to take an already existing function in the file and refactor it. In this case, I figured it best to try to refactor the addUserToDatabase function. The tricky part, as my programming partner pointed out, would be matching up the parameters and props. It was a challenging task but seeing the fruits of our labor—like adding “blueberries” and “ninjas” to the shopping list—was incredibly rewarding! #TheCollabLab #CollabLab #PairProgramming #Teamwork #CodeReview #TechCollaboration #Firebase #CodeRefactoring #ProgrammingChallenges #CodingSuccess #HealthAndTech #TechCommunity #TechCareer #Mentorship #CodingGrowth #TechLearning #RemoteCollaboration #TechProgress #LearningJourney

    • No alternative text description for this image
  • The Collab Lab reposted this

    View profile for Elise Spain, graphic

    Full Stack Software Engineer | ex-New Relic | 3 years React Developer | JavaScript | TypeScript | Python | Passion for Accessibility

    👋 Hey friends! I was laid off and am looking for a new role as a software engineer. Please like 👍 or repost ♻️, especially if you're in the San Francisco Bay Area or in any of these alumni communities: New Relic, Slack, Women Who Code, Never Search Alone, University of Hawaii at Hilo, The Collab Lab, NOVAworks, Apple, Frontend Queens 🪄 I'm a bay area native, collegiate basketball player turned software engineer with 3 years of full-time engineering experience across New Relic and 2 startups. 🙏 To help you help me, here's what I've done and what I'm looking for (look at the pretty pictures or read the not so pretty text below). Some amazing things I've achieved: 🏀 Decreased page load time by 50% at New Relic for major clients like Nike / Adobe 🏀 Reduced downtime time to respond by 25% with a notification microservice 🏀 Built an iOS mobile app from 0 ➡ 1 at a startup Before I discovered the joy of coding, I was on track to apply to PhD programs in Physical Therapy. While I am focused on software development now, 🩺 I would be an asset to any healthcare / healthtech company. I'm only looking for full-time roles in the San Francisco Bay Area, California (or remote USA). I'm currently based in Oakland, California. Thanks for reading 💚 don't forget to like 👍 or repost ♻️ - thanks again. -Elise #softwareengineer #opentowork #bayarea #healthtech #eastbay #oakland #sanfrancisco #softwaredeveloper

  • The Collab Lab reposted this

    View profile for Ross Clettenberg, graphic

    Adaptive software developer | C# | .NET | MongoDB | Express | React | Node | PostgreSQL | ASP.NET MVC

    The Collab Lab, #77 I am so glad and so proud to write that I was accepted into the final cohort of The Collab Lab! To get into The Collab Lab I answered two essay questions and gave a link to my deployed Cruise R Nah app. The only promise I had after I applied on July 26 was that I’d hear back from the organizers of The Collab Lab sometime after July 29—whether I was accepted or not! I anxiously awaited the decision. One thing was for sure, if I didn’t get accepted, I would need to rethink how I’ve been spending all this time the last two years. I received the acceptance email on August 1, 2024! It was a long four days of waiting, but when it arrived it was a moment of pure joy and relief! Even before the official kickoff on August 11, I jumped right in! On August 7, I gained access to the project’s Firebase, GitHub repository, and The Collab Lab Slack workspace. Orientation was a whirlwind of insights on React development, user authentication, scope management, and pair programming using LiveShare in VS Code. Later, I was able to introduce myself to my teammates in Slack and share my LinkedIn profile! Networking is key! On August 11, I attended the kickoff meeting, and accepted the invitation to join The Collab Lab organization on GitHub! I learned how The Collab Lab works and got some suggestions for success! A weekly schedule is one of the suggestions: Get coding done between Monday through Wednesday. Code review between Wednesday and Friday. “Office Hours” meetings on Tuesdays or Wednesdays with mentors! We also finally get an explanation of the project—it’s a smart shopping list! Oh man! So nice! A simple CRUD app with some extra features! I love it! We can focus on teamwork without worrying too much if we’re trying to reinvent the wheel! By August 12, I had successfully cloned the project repo, added my name and LinkedIn to the CONTRIBUTORS.md file, and me and my paired programming partner for the week began our first paired programming session to tackle our first issue! #TheCollabLab #WebDevelopment #TechJourney #CodingLife #ReactJS #Firebase #GitHub #PairProgramming #Teamwork #TechCommunity #CRUDApps #LearningInPublic #CareerGrowth #ProfessionalDevelopment #Networking #Mentorship #ProjectManagement #DevCommunity #SoftwareDevelopment #TechIndustry #CodeReview #VSCode #RemoteWork #CodingJourney

  • The Collab Lab reposted this

    View profile for Brianna B., graphic

    Software Developer 🔎 | { skills: [typescript, react, python] } | Problem solving is my degree 📜

    Week 1 of The Collab Lab is in the books! It was maybe an easier code week, but a good week as a team getting to work together for the first time. If you haven't been part of a #collabie cohort before there are 3 mentors and 4 devs in each group. Each week the 4 devs are split into 2 pairs to work on an assigned issue progress the entire project to completion. In this first week: - The mentors had a demo of a pair programming and finished setting up the #Firebase auth utilizing Google Auth Provider at our weekly sync, and then we were off for a week of fun. - My partner Maha A. and I started with getting our nav bar to actually navigate through the app. We are using #React in the front end, and changed the buttons originally in the navigation bar to use react-router-dom's NavLink component. Allowing the a user to actually see the other pages in our app without typing in the address bar. - Falak Z. and Ross Clettenberg added the functionality for a logged in user to see all the lists they have and the items on that list. They also figured out some #firebase issues for us, which really kept us all moving forward! In the video below is a bit of a before and after of both pairings success over the week. All changes were successfully pushed to #Github, reviewed by all devs and the mentors before pushing to production, and had our first #retro yesterday. We are on to another week and more changes to come!

Similar pages

Browse jobs