Message From Leadership

Clark Jason Ngo, Program Manager

Communication and Technical Writing 

When students ask, what skills do I need to be successful in the tech industry? I always say communication and technical writing. Why? If you can’t articulate the technological solution you’ve built, it doesn’t matter if you are new to the technology or an expert. You will have a hard time collaborating with others as they can’t understand what you are doing. If you need a platform to practice and improve your communication, we welcome you to present at STC Tech Clubs and Research Groups Weekly Meeting at 4 PM PST on Thursday.  

Technical writing is valuable skill to have. Technical writing produces technical documentation such as instructions, emails, resumes, websites, API guides, etc. Why is it important? Most of our day-to-day transactions and collaborations at work are asynchronous. Meaning, you may be doing your work referring to technical documentation, and others would refer to your technical documentation. Writing clear and concise technical documentation increases the team’s efficiency, produces a helpful knowledge base, and avoids miscommunication and wrong implementations. How can we practice? You can start by blogging technologies, writing setup instructions, or adding code descriptions to your code! 

Read more on this topic from my article – How to teach yourself to learn again 

Asking for Help, The Better Way 

When we suddenly face that big ERROR message, we are quick to fire up a message to someone without spending time to figure it out. The message usually ends with “hi, I need some help with an error” and is missing additional contexts such as the topic, stepsscreenshots, or research doneWe don’t want this type of asking for help to become a habit. Once you start working, this becomes very inefficient and decreases the team’s productivity. We at CityU recommend a best practice in the industry on asking for help. You can practice how to ask the questions the right way by following the steps below when asking for assistance on your hands-on practices (HOP), hands-on skills (HOS), Programming Labs, or Virtual Labs: 

  1. Google is your best friend. Remember to use generic keywords and don’t include a portion of the errors that are very specific to your custom input, text, or variable. 
  2. Limit yourself to 45 minutes to one hour of not making any progress and reach out for help. 
  3. When you reach out for help, be very detailed and specific. Write down your operating system, tools, frameworks, version, and the steps taken. It will be easy to understand your issue if the other person can reproduce it or has enough information to visualize the problem. 

Read more on this topic from my article – Please ask questions early and often if you don’t know how to do something 

Where to Stay Connected with Me? 

  • LinkedIn – check my profile and see more of my background and skills 
  • Twitter – where I post my daily learnings 
  • Blog – where I write tech articles 
  • YouTube – where I post my tech presentations 

Recommendations 

Communication, Culture, and Leadership 

  • [Audiobook/Book] Amazon Interview Secrets: How to Respond to 101 Popular Amazon Leadership Principles Interview Questions 
  • [Audiobook/BookThe Culture Map by Erin Meyer  
  • [Audiobook/BookNo Rules Rules: Netflix and the Culture of Reinvention by Reed Hastings 
  • [Book] Nonviolent Communication (A Language of Life) by Marshall B. Rosenberg 

Data Structures and Algorithms 

  • [Audiobook/Book] Algorithms to Live By: The Computer Science of Human Decisions 
  • [Book] Cracking the Coding Interview: 189 Programming Questions and Solutions by Gayle Laakmann McDowell 
  • [Book] Elements of Programming Interviews in Python by Adnan Aziz, Tsung-Hsien Lee, Amit Prakash 

Design Patterns 

  • [Book] Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, et al. 
  • [Book] Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software by Eric Freeman and Elisabeth Robson 

Information Technology 

  • [Book] ITIL For Beginners: The Complete Beginner’s Guide To ITIL by ClydeBank Technology 
  • [Book] ITSM QuickStart Guide: The Simplified Beginner’s Guide to IT Service Management by ClydeBank Technology 

Security 

  • [Book] Web Application Security: Exploitation and Countermeasures for Modern Web Applications by Andrew Hoffman  
  • [Podcast] Darknet Diaries – True stories from the dark side of the Internet 

Software Development 

  • [Book] Fifty Quick Ideas To Improve Your User Stories by Gojko Adzic, David Evans, et al. 
  • [Book] Head First Software Development: A Learner’s Companion to Software Development by Dan Pilone and Russ Miles 
  • [Book] The Pragmatic Programmer: 20th Anniversary Edition, 2nd Edition: Your Journey to Mastery by David Thomas, Andrew Hunt 
  • [Book] The API Lifecycle: An Agile Process for Managing the Life of an API by Bill Doerrfeld, Andreas Krohn, et al. 
  • [Audiobook/Book] The Phoenix Project (A Novel About IT, DevOps, and Helping Your Business Win) by Gene Kim 
  • [Podcast] Changelog – Conversations with the hackers, leaders, and innovators of the software world  
  • [Podcast] CodeNewbie Podcast – Stories from people on their coding journey  
  • [Podcast] Syntax – A Tasty Treats Podcast for Web Developers 
  • [YouTube Channel] Hussein Nasser – backend development 
  • [YouTube Channel] Fireship – 100 seconds of [insert technology] 
  • [YouTube Channel] Fun Fun Function – JavaScript 

System Design 

  • [Book] System Design Interviews by Alex Xu