021: Software Engineering Concepts for Business People and Facing Impostor Syndrome with Jason Lestina

Jason Lestina is a marketer turned software engineer. He walks us through the fundamental concepts in software engineering that sales and marketers need to understand when selling at a software company. We discuss Customer Success and development, agile, product management, and what tools developers use like GitHub and Automation. We hit on Jason’s background. We discuss how working in Retail management and computer graphics early in his career moved him into IT Marketing, which then spring-boarded his into doing a code academy in software engineering. Finally, we hit on impostor syndrome for new software developers and how to overcome that.

Listen to the full episode on iTunes here.

Show highlights:

09:00 – He talks to us about how his background in Retail management, American Sign Language, and computer graphics moved him into IT Marketing, which then spring-boarded his into doing a code academy in software engineering.

15:00 – How does a marketing background help him as a software developer? Sales sometimes has a bad reputation among technical people, but technical people NEED marketers and sales people to generate awareness on the products.

17:30 – Many engineers get tunnel vision on the technical work and not the end user impact of a software deployment. Jason is constantly balancing the engineering bias to be product-first, versus the business bias of being user-first. Both are important.

19:00 – What is engineering day-to-day like? We hit on company sizes, ranging from start-up, to mid-sized, to global enterprise size as a software developer impacting software product and soliciting feedback. We hit on basic definitions for Agile, sprints, and how developers go about getting feedback from Customer Success and Product Management to make changes.

26:00 – Defining user stories and sprints for developers to scope and backlog work. We hit on how the juggle the work to be done. To manage workload, developers don’t time-box work in agile. Rather, they think about it in terms of complexity. Different user stories have different complexities so their weighted differently.

30:00 – How does Product and Project Management fit in? How many dollars will this project cost? What do we sacrifice to get things done in different dates?

31:30 – What is DevOps, as well as CI/CD Continuous Integration and Continuous Improvement? How do we manage uptime and production? And, what sort of tools and software does development use? Jason says, “If you can’t get your code in front of customers, you can’t determine if it’s solving problems, so we have to ship code faster and iterate”. YET, a developer’s biggest fear is releasing software that is broken or full of security vulnerabilities.

34:00 – Bigger companies have specific deployment methods, like “gating” which is deploying a small test so only a few users see it, versus the entire customer base. Developer deployment teams can quickly turn-on and turn-off to allow for a focused test group.

36:00 – Main Tools Developers use: GitHub biggest thing in tool kit to work on features in safe environment. TeamCity/ NightWatch for automated testing, so the concept of QA Engineers are going away. Software engineers are expected to be their own QA testers with the automation software. They have tools that allows a developer to simulate opening a browser, clicking through the app, and running fully automated tests on code.

39:00 – What is a Code Bootcamp and how did it get Jason job-ready? He says there was big financial risk in-terms of the $15k investment for a 12-week program. Dealing with impostor syndrome in software development. Technology industry is booming, and trends for certain jobs showing it’s growing and it’s a good time to learn.

46:30 – What are the 12-weeks in a code bootcamp like and what is the output of the program (final projects, recruiting process with a graduate’s new skills)? Jason walks us through.

48:30 – What is the difference between front-end code and back-end code? Back-end is data-later, like when you hit “save” that’s making a post to some database or table. Front-end retrieves user data off the back-end.

51:00 – Discussing the emotional side of impostor syndrome for new software developers. Especially in technology, once you start learning you think you’re good, but the more you advance the more you realize how much you don’t actually know. It’s so vast and complex.

56:00 – Being okay with failure. Closing remarks.

Find Jason online: