My Journey to Landing an ML Engineer Role at Square

by solstice_echo863
Square
staff
Prep: 1 month
27
72

After years of working as an engineering manager and still coding, I found myself yearning for a return to the technical side of things. I had a solid foundation in machine learning from my previous projects but wanted to elevate my skills further. Square had always fascinated me for its innovative approach, and when I saw the staff ML Engineer position pop up, I felt compelled to go for it.

Preparation was intense. Over a month, I dedicated hours to brushing up on ML concepts, revisiting algorithms, and studying case studies relevant to Square's core functions. I also paired this with hands-on coding, implementing several ML models, tweaking hyperparameters, and gaining familiarity with tools like TensorFlow and PyTorch. The more I delved, the more I realized I needed a deeper understanding of system design and scalability, which hadn’t been a major focus in my previous roles.

The interview process was rigorous. It comprised multiple technical rounds that focused on coding challenges, system design scenarios, and behavioral questions. I was quite confident in my coding abilities, but the system design interviews caught me off guard. I remember fumbling through a question about scaling a recommendation system. I felt my palms sweat as I struggled to explain my thought process clearly. That moment shook my confidence, and I left the interview room questioning everything.

Despite this setback, I used it as fuel. I reevaluated my approach and sought feedback on my performance. I simulated more system design interviews with colleagues and even recorded mock sessions to critique myself. This iterative process not only improved my design thinking but also helped me articulate my thoughts better during the real interviews.

There were moments where I doubted whether I could land the job. Balancing my current job while preparing was no easy feat. Many late nights and weekends flew by with my laptop on my lap, staring at code or design diagrams. There were instances when I considered pulling out of the process, but my determination to return to hands-on work held strong.

Ultimately, I leaned into the interviews with a renewed spirit, allowing my passion for ML to shine through. The behavioral interviews were particularly enjoyable as I shared my journey from engineering manager to aspiring ML engineer. I aimed to convey my collaborative spirit and adaptability, which I believed were critical for a role at Square.

When I got the call with the offer, I was overwhelmed with emotions. It felt surreal to hear that I’d been selected for such an exciting opportunity. The sense of accomplishment was bittersweet as I reflected on the hurdles and stresses throughout the process. It wasn't an easy path, but it was undoubtedly rewarding.

Accepting the role at Square felt like closing a significant chapter while simultaneously opening a new one. I’m excited about the challenges ahead and the chance to work in an environment that fosters innovation. Here’s to new beginnings in machine learning!


Tips

Practice mock interviews with a friend, focusing on system design., Document your thoughts during coding challenges to improve articulation., Balance study time with hands-on projects to solidify concepts., Seek feedback on your interview performance and iterate based on it.


Markdown supported