So, my first Build Week at Lambda School was 3 weeks ago. Its a multi-disciplinary event that happens at the end of each unit. I don’t think any other bootcamp offers anything similar. Basically, students from different tracks get together and pick a project from a big menu of choices (at least 64 when I last checked) and create it. This means that when a student completes Unit 1, which is Web Fundamentals, that student then applies what they’ve learned towards the project. In my case, with Unit 1 under my belt, my task was to build a marketing website for our project. Students who are further along in the full-stack track perform other duties, like building the front end, building the back end, creating the data structure and database, and so on. We actually didn’t have people from other tracks join us, so there were no Android developers, iOS developers, data scientists and, surprisingly, no UI/UX people on our team. Some of that was due to the mix of available students, and I think some might have been based on the project itself. Other people from my regular group did have UX people (designers) on their teams.
Picking a project
The first step in the process was picking a project. We were given a URL to an Airtable site that had dozens of projects that we could work on. From there, we selected 6 projects that we were interested in and our TL submitted our names to them. The picks were ranked, so you had your first pick, 2nd pick, and so on. I mainly submitted for food-related projects, because I think with my stomach.
The project I got assigned to was called Potluck Planner. Its a program that helps people to plan potlucks (surprise!). There were more serious projects, like one that helps NASA find planets, a diabetes manager, a deforestation app, refugee story app, world problems index, and so on. There were also more lighthearted ones, like Dad Jokes, which I would have probably also been perfect for, but in the end, I actually do have people over for potlucks quite a bit, so this was more up-my-alley (and my wife thinks most of my dad jokes are lame).

Meeting the team
I was surprised with how quickly we met our team. Within a few hours of getting my assignment, I was contacted by our build team’s TL. He set up a channel in Slack for us to meet and once everyone had joined, we scheduled an initial meeting for that evening. Some teams had a longer time getting set up, because for many (like myself) this was a new process, and also because we were just coming off our our Week 3 Sprint Challenge, so there were people taking the Challenge over again.
So, we met as a team around 7:00 EST and got the breakdown of our group. We had 3 people from my cohort, which meant that there were 3 people working on a website for the project. There was no UX/UI person, no Android person, no iOS person, no data science student and no back end developer. We also had 4 React developers – I think that two were in Unit 2 and two were in Unit 3 – and finally, our TL.
From what I learned both during the meeting and after, when I met with my regular group and also read through Slack, this build week wasn’t typical with regard to the distribution of students. There were a lot more web developers in my level than there were students at other levels, which is why we had no back-end and had 3 web developers. There were also far more full-stack developers than students from other tracks, but this might be normal. Lambda had dealt with this successfully before, but I don’t think they’d had to for a while.

Planning
Our TL initially seemed to have a working structure for going forward. We sat as a team and went over design documents, figuring out what each person would contribute to the project. He also added us to a Trello board, which is a web-based collaboration/project management tool. It was our main method of tracking progress, although we used the Slack channel too.
From the first meeting, my personal feeling is that web developers at my level were somewhat left out, because we weren’t working on the application directly. We were providing a landing page that would eventually link out to the application. Some groups had all of the web developers work on a single site. Others had each web developer create their own website. Our team fell into the latter group.
Our TL then divided the React developers into two teams, each with a junior and senior developer. The React developers and the TL got to work with speccing out the application, and the web developers were basically given the task to come up with websites to compliment and market the application.
I left our initial meeting feeling a bit overwhelmed and directionless. My desktop had been having issues when running both Zoom and Slack, and had been blue-screening. Naturally, it did so during our first meeting, so I reconnected with the laptop, but had no resources available while I waited 20 mins for the desktop to recover. During that time, planning occurred, and I provided minimal input.
One of the React devs had actually done this project for a prior Build Week. He had a military background and stressed that one of the big features of his old team’s implementation was the ability to donate to the Wounded Warrior Project. This seemed to become something of a requirement for this iteration as well, and with little-to-no real guidance from the team overall, I took it as gospel.
Our initial design document fell short of what I was used to seeing at work. It had some basic functions, like a login and registration function, but no real description of the product’s overall functionality.
One is the loneliest number
During the meeting, when our TL decided that each web developer would work on his or her own version of the website, and that the React teams would each then decide which one they wanted to link to, I voiced a concern that my impression was that we were supposed to be working on this as a team. Creating 3 different websites that existed apart from each other didn’t feel like teamwork to me. I proposed an idea that if we have to each create our own site, we link to the others and treat their websites as “themes”. Our TL said that it was okay to consider that as a stretch goal.
After the meeting, I reviewed our design documents and then I went to the Airtable list from Lambda and used the pitch and MVP details there to come up with ideas for how to structure my website. We had four days to work together and complete the project. Then it would be presented on that upcoming Friday.
Inception
Feeling directionless, I decided to get a head start on things over the weekend. I ended up creating a Home Page and drafting an About Page. One of the few things that we had decided on concretely was a color theme. I took that and the project details from the Lambda website and sketched out my design. I then wrote copy for each section. By the time the weekend was over, I had a working website that met MVP.
We had a short, optional, meeting on Sunday and I was able to offer more input this time around, as I Zoomed from the laptop and did everything else on the desktop. Our TL dove in and edited the design document, adding some structure and detail to it, and making it more of an actual features and task list than it was before.
During the meeting, I let the team know that I had begun working on my website and that I’d taken direction about how to structure it based on details from the description on Lambda’s projects page. I showed them my initial site and was met with some gasps – I’d worked hard on it and the team was impressed. I told the other web developers to take anything that they wanted from my page – especially copy, if they were having a hard time coming up with copy for their own sites, and any other information from it. I asked the team for pictures of themselves with food, because I really wanted to tie food into the overall theme of the website, since it was a food-based app that we were working on. I also asked for their favorite foods, so I could include it in my About Page.

Process
Monday came and the rest of the team got started on their tasks. I was antsy to get pictures of the team stuffing their faces, along with the names of their favorite foods, so I asked for it on Slack. I only had one response. I know that everyone else was on Day 1 though, and I was effectively on Day 4, so I opted to not press it any further yet.
The rest of the week was spent with me refining the page and helping the team a little. I initially had a single-color background for the site. I think it was the top one (#FFCC99) from our color theme. I found a way to create a gradient and use <section> to get it to spread down over the entire page. I used #FFCC99 in the header and #993366 in the footer, to blend and anchor them to the gradient. I applied it to the information boxes on the page as well, which led to a nice visual effect that my regular group would later comment looked like an optical illusion.
As the week went on, I got pictures from other teammates, formatted them in Photoshop to make them all the same dimensions, and added them to the About Page. I added a hover effect so that the pictures would enlarge when moused over, and added a transition delay, to make the image zoom smoother. There were other small things added, like tooltips over the menu items, a favicon that appeared in the browser tab and a border-radius variant around the login and register section.
Sadly, there were some stretch goals I set for myself that didn’t work. I had found and modified code that flipped a picture along the x-axis and displayed text on the back part – all using CSS. It worked, but when I expanded the screen width, it broke out of the container it was in and obscured the text below it. I tried a bunch of different things to correct this, but eventually gave up, which was a shame, because it was a really nice effect.
Inclusion
One stretch that I did make was adding the other two web developers’ sites to my page as “theme” options. I did this using little CSS buttons at the top, in my navigation menu. I named them after the other two developers, and gave them tooltips. I did notice, afterward, that the other two web developers didn’t extend the same connection to my site, which was something of a letdown for me.
I also wanted a way to connect with the apps from both React teams and finally decided to link to one as the “main” application and the other as a secondary server farm. I included the second application using CSS buttons, just like how I’d connected to the other two web developers’ sites. The way that I decided to spin it was that the second set of login/register buttons would be explained as a backup system that could be used if the main site was down.

Conclusion
It took a little while for the team to warm up and work together. Initially, I felt like I was working in isolation, but by the end, each of the people on the team had found their niche, although web development was still somewhat apart from the rest of the team. Trello and Slack let us keep informed about what everyone else was up to, but my requests for pictures and favorite foods didn’t all get answered until almost the end; and I think it was helped along when one of the other web developers also asked for some of the same info.
One of the React developers did host a 30-minute Zoom session with the web developers and I found it very helpful. We were able to learn a lot about their vantage from talking to him, and he shared a great JavaScript resource regarding immutability, along with giving us insights into what was coming down the pike for us still. It turned out that two of the other members of the team were also ex-military, but had been more low-key about it (I didn’t know about one of them until he submitted his picture for the About Page!).
When I spoke with my regular team, we exchanged details about our Build Week teams and had a big range of experiences with regard to team makeup, communication, division of labor and work ethic. I think that, although my team wasn’t overly communicative early on, we still spoke enough to get work done over the course of the week.
I didn’t get sample pictures of either React Team’s application, although I had limited access to one of them at one point. When we showed our work to our regular teams on Friday, our TL did let us know that, from past experience on other Build Weeks, he would not have had the React teams try to build two different applications. We ended up (as far as I know) with two incomplete applications. I think that part of the rationale for having a Build Week is to make us work in teams and have to deal with the intricacies of updating GitHub and managing branches and rolling out updates systematically. We didn’t really do much of that (at least from my experience) and I think that having the team work on different features of a single application could have served us better than splitting up the party.
Our TL did rise to the challenge and solo the backend portion, to my knowledge, and we lost one of the React devs to a family emergency on the last day, so that definitely slowed down progress for one of the applications.
One of my big takeaways from this experience is that next time, I’ll work harder to make sure that our expectations are more clearly ironed-out at the start. I also think that we shot ourselves in the foot by dividing efforts between two applications. We could have completed one, styled it nicely, perfected the UX and then worked on stretch goals. Another thing I would try to do is keep the web developers involved in the process. I think that, at least with design, all of the team could have had some input. There were also some interesting thoughts for stretch goals that never got implemented – like a way to flag food allergies. This could all have been more attainable with one larger group, instead of two smaller ones.
So, my overall feeling is that I was more underwhelmed than not by the whole process. Bottlenecks included waiting on other people for input (like pictures and one-liners about what their favorite foods were) and not knowing what the React teams were working on. I’d have loved to have SEEN their applications while they were working on them. So, I’ll definitely be keeping all of this in mind for Build Week 2.
Here’s a link to a published version of my site. Hover over the buttons in the nav and in the login, to see what everything does, and do the same over the images in the About Us Page.
2 thoughts on “Lambda School: Full-Stack – Week 4: Build Week”