The Online Co-op Experience at Lifion

Jinwu Liu
Lifion Engineering
Published in
7 min readAug 20, 2021

--

Written by Jinwu Liu and Armaan Samuel

Photo by Surface on Unsplash

Lifion, by ADP is a big believer in the value of co-op programs and how they are a win-win for co-ops and companies alike. Co-ops gain experience from putting their classroom skills to work in a real-life environment and also expanding their networks while companies benefit from co-ops adding value to time limited projects and from investing in a pipeline of diverse talent for future hiring.

Lifion has had a well-established paid co-op program for a number of years now, whereby engineering students are embedded in the platform engineering organization for around 16 weeks, working shoulder-to-shoulder with engineers and others on a wide range of interesting and important projects. Unlike some companies, Lifion sees co-ops as a long-term investment in talent for their future and it’s great to see many co-ops becoming full time employees. I’ve nearly completed my tenure as a Technical Product Owner Co-op at Lifion on the Platform Web UI team and based on a dialog with my buddy Armaan Samuel, a fellow Software Engineering Co-op on the Platform ETL team, this blog post is intended to provide an insight into what the experience was like for us, notably while working remotely due to the pandemic. We hope this may be of use to potential co-ops in future and other readers alike!

Conversation

Jinwu Liu (JL): Hey Armaan, how are you doing?

Armaan Samuel (AS): Hey Jin, I can’t believe the term is already over. 16 weeks have come and gone.

JL: Yeah, I can’t believe it. As cliché as it sounds, I feel like I’ve learned so much in such a brief time at Lifion — what are your thoughts?

Skills Learned in School vs Workplace

A: Absolutely agree! Whenever I complete a co-op term I like to think about what are all the courses I’ve taken so far in school and see how the co-op relates to what I’ve completed during the term. At school, I’ve found that most of what we learn is theoretical and our assignments test our implementation and understanding of that theory. For example, learning about Data Structures, Algorithms and Operating-Systems using C was interesting but I rarely needed to apply these skills directly on the job. However, the problem-solving and critical thinking skills I developed from these challenging courses helped me learned quickly on the job, and aided me in conceiving intelligent Typescript solutions to complete my work.

Conversely, Lifion introduced me to technologies that I had not been exposed to in my education. Working with Jenkins, Docker, Kubernetes and cloud development were new experiences that I’ll be able to apply in my future career of software engineering. Additionally, the large code base and nuanced microservice interactions pushed my debugging and testing skills to the limit! Working in the Lifion codebase was as fun, yet just as challenging, as working in our Operating Systems course codebase!

Source: Piqsels

JL: As a Computer Science student myself, your points resonate with me from a software development angle. As for working in product management, it can be hard to find colleges that provide students with “Product Management 101” style courses as part of an undergraduate degree. I think the closest to what I’m doing can be found in courses on Human-Computer Interaction, Design, Machine Learning/Artificial Intelligence, and higher-level software development/principles courses — but because of the multi-faceted nature of the product role, it’s often necessary to take learnings from a wide variety of courses. What I’ve noticed is that nothing beats getting industry experience, especially in a product and technology focused organization such as Lifion.

For example, right off the bat my manager made it clear to me that I’d be leading a large-scale and cross-team project on an Organizational Chart UI component that would provide business value to Lifion and clients well after my term there. No course prepared me to work autonomously with so many different teams and perspectives. Understanding requirements and the “why” of such products is unique to Lifion and similar companies, something it seems school curriculum struggles to keep up with. That said, more and more seem to be adding product management courses to their offerings — pretty cool to see.

Importance of Mentorship for Co-ops

JL: Another valuable takeaway I’ve grown to appreciate through talking with others at Lifion is the significance of mentorship, especially as co-ops. A few weeks into my co-op term, my manager suggested a few Technical Product Managers, Designers, and Developers that would help me in not only understanding the work that I was doing but also in obtaining any career advice in general. Given the variety of prior experiences of people I had informal chats with, I was able to gain fresh advice from many perspectives that I may have otherwise overlooked. This is an opportunity that I hopefully will be able to carry into my future co-op experiences. And that’s aside from all the help my manager has been giving this entire term, finding a perfect balance of assigning work yet still allowing me to autonomously grow and collaborate. What are your thoughts on mentorship?

AS: I am so grateful for my manager! He has invested a lot of time in me to help me grow as a software engineer. From the start of my co-op term, he hand-picked progressively more challenging work for me to onboard onto our large codebase in a way that has helped me to be successful. Every time I have had a new ticket assigned to me that used Lifion proprietary concepts that I was not familiar with, he spent time not only explaining the concepts themselves but also how they tied into the bigger picture at Lifion. His coaching and mentorship has made me feel like my contributions really matter.

Also, whenever I am blocked, he doesn’t directly give me the answers to my problem. Since he knows the huge codebase like the back of his hand, he provides me with targeted hints to encourage me to think differently and approach my problems from a new angle. I have learned a lot from him and am a much sharper software engineer than when I started. I definitely plan on mentoring future co-ops I may work with just as he has mentored me.

Photo by NEXT Academy on Unsplash

No Such Thing as Over-Communicating

JL: In my time at Lifion, I’ve also learned the value of over-communicating. On top of working remotely and dealing with the challenges it brings (such as Internet connections cutting out or bad audio), a Product Manager must be able to ensure all stakeholders are on the same page in a concise yet descriptive way. I’ve noticed it to be sometimes hard — such as when you just had a big lunch and you’re 45 minutes into your hour-long afternoon meeting — to always have everyone’s attention, especially when not all co-workers are face-to-face. Thus, it is especially important to emphasize the “why’s” behind decisions and to continuously question and clarify any ambiguities.

Photo by Headway on Unsplash

AS: I’ve definitely had to increase and adapt my communication due to working remotely this term. In previous co-op experiences that were on-site, whenever I’ve been blocked in my work, I’ve been able to walk over to a Senior Developer’s desk, show them my code, and see if they can help me solve issues. During this remote co-op, the best I can do is WebEx screen share! This term, I’ve needed to work harder to communicate the changes I made, the issues I’m facing, and what I have done to try to resolve them. One example this term has been issues I’ve had configuring node.js on my machine. It took much screen-sharing with 4 different developers to finally discover the issue was due to some nuanced version incompatibilities. If I hadn’t communicated well enough, it might’ve taken even longer!

The second aspect of remote communication that stood out to me was ensuring that my understanding of the work needing to be done matched the functional requirements defined on user stories and communicating this effectively. This meant working with our Product Manager to truly understand the specific uses cases and detailed functional requirements. She would clearly communicate the expected behavior and we would check for understanding. I would then demo and clearly communicate how the changes I implemented were working and satisfying the acceptance criteria. Any final thoughts about the co-op?

Conclusion

JL: Yeah! Initially, I didn’t know much about the HR software industry — now I realize that there is a whole world of innovation possibilities. I think this sentiment is captured well in Lifion’s mission of “defining the future of work.” Ultimately, my time with Lifion has helped me more deeply appreciate how vast of an influence technology is having in transforming all kinds of industries.

AS: Absolutely. Having been at Lifion for 3 months, I’ve learned that my team is tight-knit, with ownership of critical services and huge responsibility and impact to the platform and program. I’ve also really enjoyed scratching the surface of metadata-driven development and cloud development. Lifion truly gives their co-ops the feeling of responsibility in their work and has definitely been my favorite co-op term. Despite the remote nature of this co-op, I felt the work I did was more meaningful and impactful than other in-person co-ops. I’m also excited to be continuing next term so I can solidify my understanding of their software development practices and continue to make a real impact with the team.

JL: Great to hear! Anyways, it’s been a really great term with you!

AS: For sure!

--

--