Given to a bunch of Computer Science and IT students at Georgia Southern University. It's less about technology and more about working people people in technology and what skills you need to develop to work on a team and be successful.
• Easy to get lost in the system • Easy to compartmentalize and let your skill set calcify, or end up with a skill set that doesn't meet any other company's needs (because you will get laid off at some point). • Soft skills become more important than hard skills. • A guerrilla spirit goes a long way. • Lots of opportunities for standards work, big hard problems and working at huge scale. • Lots of layers of decision makers make it hard to feel ownership over the products you work on. • Lots of opportunities to try on different roles within the same company!
under fire • Great if you have a hero complex • Great if you get bored easily • Not great if you like sleep or time off or your family. • Not great if you don’t work well under pressure. • Great way for technical talent to learn about the business side. • Probably better to do this early in your career when you can afford the risk.
the product lifecycle you are, the more cynical and pessimistic you tend to get. Don't fall into that trap. - Be the Golden Rule - make things easier on everyone else on the team by meeting them where they are and being awesome. - Don't get married to a single solution or jump to conclusions. To quote the ancient philosopher, Vanilla Ice... NEXT SLIDE
a designer, know what kerning and whitespace are. If you're talking to the product person, know what their goals are and be able to explain tradeoffs in terms they'll understand (money and time). • This is REALLY important!!
- you like writing code and solving problems. • QA - you like finding bugs and being an advocate for the end user. • Ops - you like not sleeping and being the hero. • Management - you like leadership and diplomacy. And paperwork. And meetings.
you don't get a chance to play with the latest technology, pay attention. • Have a “future solutions” file of things to play with that might not be ready for primetime yet. • Seek out people smarter than you and learn everything you can from them! • Always be playing - it's a lot more fun for everyone that works with you if you have fun with your job. Always find a way to "level up" on every project. Tinker with technology and find applications for it to your day job.
stack works, always ask why and always experiment with better ways to do things. Don't fall into the toolset trap (this is the hammer they gave me, so I have to use it)!! Also, support diversity - don’t be a BROgrammer! Monocultural teams stagnate easily and miss opportunities. The more diversity, the more solutions, the faster/better the progress and eventual product!