My First Code Challenge
Last week I had a successful phone interview that led to my first code challenge. I have had numerous phone interviews and a couple of in-person interviews, but never a code challenge. I was feeling excited and ready to tackle the challenge. We set it up for me to receive it on Friday evening and I was to return it within 48 hours.
As I read through the directions for the project, my heart started to sink a little. The company had sounded very open to hiring newer developers, but this seemed like a complicated task. The project had to be submitted in a language that I had never even heard of! (I have spoken to a couple of seasoned developers this week who had also never heard of it, so that make me feel a little better!)
I quickly tried to do some research on Sibilant online and discovered that there is very little out there other than the official documentation. The company indicated that this was intentional for a couple of reasons. One, they said that Sibilant is similar to the language that they primarily use, but is easier to learn. They also wanted to make you work a little harder by not having extensive libraries and blogs to rely on.
Hitting a Wall
I pretty much spent the entire day and evening on Saturday working on the project.
I don’t think that I have ever spent so many hours trying to write the same line of code and failing! According to my WakaTime summary, I spent over 10 hours last weekend just typing into my code editor! That doesn’t even include the time I spent using the compiler in the browser, or working in the command line! I finally had to go to sleep without a working solution.
A Moment of Optimism
I got up at 6:00 Sunday morning and jumped right back in. I felt a lot of pressure to figure it out because we were supposed to go on a college visit with my son and I knew he would be disappointed if I didn’t go. Things just seemed to come together for me. I discovered that I could avoid using the incr tag by using +1 instead. I also worked around the or statement with a ternary statement instead.
I made the big breakthrough of discovering that I could set and get an object together and I appeared to be in business! My data was sorting and displaying in the correct order, so I jumped in the shower and headed off to the college visit! We had a great day, and in spite of what is about to come, I don’t regret making the decision to put my family first.
More Test Data
I got excited and thought that I had solved it a little too soon. The company had provided an initial set of data and then gave 2 more data sets to try after you got the first one working. When I ran the function using the second data set, it was no longer sorting the way I needed it to. I tried hard to figure it out when I got home Sunday afternoon, but was unable to finish it before the 48 hours was up. I sent it what I had attempted, with a readME including my plan of attack, thoughts about the project, and some of the things that tripped me up. I was hoping that maybe seeing my hard work and problem solving skills would be enough, but I received my official rejection a couple of days later.
This was a very humbling experience for me. My husband kept reassuring me that I had done my best and that was all I could do. It made me realize that there have been very few times in my life where my best hasn’t been good enough. I am not used to a being in a situation where I have to submit something incorrect or incomplete.
I have to remind myself that changing careers is hard, but in the end will be worth it. I am definitely learning to be stronger as I face rejection and go through the job search process as a “newbie”. At times it can be very tempting to just go back to teaching, but this article really helped me get out of my rut this week. Switching careers is hard. I just need to power through and trust that the right opening is out there for me.