CS interviews are a different breed from other interviews and, as such, require specialized skills and techniques. This talk will teach you how to prepare for coding and PM interviews, what top companies like Google, Amazon, and Microsoft really look for, and how to tackle the toughest programming and algorithm problems. This is not a fluffy be-your-best talk; it is deeply technical and will discuss specific algorithm and data structure topics.
Emertxe Certified Embedded Professional (ECEP) is a flagship job-oriented training program offered by Emertxe. This slide deck has induction detail about course structure and delivery.
Demand for software testers has grown manifold in recent years. Here is a list of reasons as to why it is a great career option for the youth or young IT enthusiasts
This presentation focuses on how to seek, recruit and retain good talent for your software development team. It also examines external human resource factors such as the job market, the competition and software trends.
Software Developer Career Unplugged - GeeCon 2013Wojciech Seliga
This is my quite subjective take on various less technical aspects of a software developer career. I delivered this presentation and GeeCon 2013 (video hopefully coming soon) and quite compressed/abridged version at InfoSHARE.
Emertxe Certified Embedded Professional (ECEP) is a flagship job-oriented training program offered by Emertxe. This slide deck has induction detail about course structure and delivery.
Demand for software testers has grown manifold in recent years. Here is a list of reasons as to why it is a great career option for the youth or young IT enthusiasts
This presentation focuses on how to seek, recruit and retain good talent for your software development team. It also examines external human resource factors such as the job market, the competition and software trends.
Software Developer Career Unplugged - GeeCon 2013Wojciech Seliga
This is my quite subjective take on various less technical aspects of a software developer career. I delivered this presentation and GeeCon 2013 (video hopefully coming soon) and quite compressed/abridged version at InfoSHARE.
In this introduction to Cadenced Flow, you’ll explore a principled approach for evolving teams no matter which methods they are using, or how far along they are in their journey of becoming more lean or agile. Participants will learn the basic principles that drive team cadence and workflow and then cover practical approaches for improvement, such as how to define and measure work, as well as how to coordinate product delivery. These concepts can be applied across all aspects of organization and all departments to help build a higher performing business overall.
Remote Agile Software Teams: Worth the Risk?MentorMate
Agile distributed teams are the latest trend in offshore development as businesses seek to satisfy the growing worldwide demand for technical talent. Can they be realized in daily practice? MentorMate President Jamie Bolseth and Vice President of Strategic Consulting Craig Knighton share.
Explore:
+ Benefits of distributed teams
+ Best practices to run Agile with remote software teams
+ How to organize your distributed team
+ Business scenarios when Agile teams succeed
+ Strategies to maintain open communication
+ How to build trust with remote teams
+ Criteria to select the right project management tools
Adapting Test Teams to Organizational Power StructuresTechWell
Scapegoats, spin-doctors, white knights, and sycophants—have you found your test team playing these roles? Organizations, both large and small, often have distinct cultures and power structures with significant but insidious impact on how individual testers and teams are expected to operate. Sometimes the difference between doing what sponsors and stakeholders request and doing what is really needed becomes blurred. John Hazel helps you learn how to recognize the cultural characteristics of different types of software development teams, and how they drive expectations for the test team. Understand the decision-making dynamics and the perceived value of information across different organizational power structures, and the pitfalls that await unwary test teams. Develop strategies to adapt your team’s approach away from compliance and execution and toward discovery and dialogue. John shares his experiences across a spectrum of power structures, field-tested methods, and tools to help your team tailor their testing practice to add value while maintaining objectivity and impact.
AI Models For Fun and Profit by Walmart Director of Artificial IntelligenceProduct School
Product Management Event at #ProductCon NY on how to create AI models for fun and for profit by Jason Nichols, Director of Artificial Intelligence at Walmart Intelligent Research Lab.
Coders are writing tests and testers are writing code. This seemingly paradoxical truth is becoming more and more prevalent in companies of every size. But coders and testers still have very different cultures and processes and are actually sharing very little knowledge, even in companies that have supposedly taken down the wall between the disciplines.
In this talk, we explore the increasingly blurry lines, discuss some of the differences in the approaches coders and testers bring to the table, and provide practical examples of lessons learned by sharing knowledge, cultural perspectives and evolved wisdom.
Project Management for the Non-Project ManagerGary Gelb
This presentation was made for a guest lecture lesson in the course Managing Products & Brands at NYU. It's geared for non-PM professionals who need to know a little about project management, or for people finding themselves in this role without having had PM training.
Take Control of Your Career: A Personal Growth FrameworkC4Media
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2LmKyhy.
Aaron Randall talks about a Personal Growth Framework – a low-lift way of helping identify areas to grow that are exciting and valuable for career development. Filmed at qconlondon.com.
Aaron Randall is the CTO at Songkick, a live music startup aimed at making sure concert fans never miss their favourite artists live. Songkick develops web and mobile apps which serve over 19 million visitors a month.
Cracking the Coding Interview (http://www.amazon.com/dp/098478280X) is the #1 best selling interview book on Amazon.
Cracking the Coding Interview gives you the interview preparation you need to get the top software developer jobs. This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book is over 500 pages and includes 150 programming interview questions and answers, as well as other advice.
Modern life relies on good tech. Good tech relies on quality code. This presentation lays out the rationale and research behind my draft software quality certification tentatively named Quality+.
AEM Maxed = Agile + Automation.
Time Warner Cable and iCiDIGITAL reveal how a stellar agile development team delivers an award-winning website using Adobe Experience Manager. Highlights include team interactions, scaling the team, collaborative moments, testing automation, and continuous integration. Also, they will share previews of a few open source attractions that will accelerate your Adobe Experience Manager delivery.
Case Study: Time Warner Cable's Formula for Maximizing Adobe Experience Manager Mark Kelley
Time Warner Cable and iCiDIGITAL reveal how a stellar agile development team delivers an award-winning website using Adobe Experience Manager. Highlights include team interactions, scaling the team, collaborative moments, testing automation, and continuous integration. Also, they share previews of a few open source attractions that will accelerate your Adobe Experience Manager delivery.
Learning Objective: Increase analytical and problem-solving skills
Description: What are the most valuable skills in today’s business world? Technical skills, people skills, and management skills are all critical skills needed to create impact. However, it is the integration of these skills that support professionals in increasing capacity to analyze and solve problems. The perspectives of the science involved in the technology, other people involved in the work, and ultimate effect on the business, must be considered for a solution to be successful. This session will feature an expert panel that will share their winning strategies and approaches to analyze and solve problems, and apply these models to complex business challenges.
In this introduction to Cadenced Flow, you’ll explore a principled approach for evolving teams no matter which methods they are using, or how far along they are in their journey of becoming more lean or agile. Participants will learn the basic principles that drive team cadence and workflow and then cover practical approaches for improvement, such as how to define and measure work, as well as how to coordinate product delivery. These concepts can be applied across all aspects of organization and all departments to help build a higher performing business overall.
Remote Agile Software Teams: Worth the Risk?MentorMate
Agile distributed teams are the latest trend in offshore development as businesses seek to satisfy the growing worldwide demand for technical talent. Can they be realized in daily practice? MentorMate President Jamie Bolseth and Vice President of Strategic Consulting Craig Knighton share.
Explore:
+ Benefits of distributed teams
+ Best practices to run Agile with remote software teams
+ How to organize your distributed team
+ Business scenarios when Agile teams succeed
+ Strategies to maintain open communication
+ How to build trust with remote teams
+ Criteria to select the right project management tools
Adapting Test Teams to Organizational Power StructuresTechWell
Scapegoats, spin-doctors, white knights, and sycophants—have you found your test team playing these roles? Organizations, both large and small, often have distinct cultures and power structures with significant but insidious impact on how individual testers and teams are expected to operate. Sometimes the difference between doing what sponsors and stakeholders request and doing what is really needed becomes blurred. John Hazel helps you learn how to recognize the cultural characteristics of different types of software development teams, and how they drive expectations for the test team. Understand the decision-making dynamics and the perceived value of information across different organizational power structures, and the pitfalls that await unwary test teams. Develop strategies to adapt your team’s approach away from compliance and execution and toward discovery and dialogue. John shares his experiences across a spectrum of power structures, field-tested methods, and tools to help your team tailor their testing practice to add value while maintaining objectivity and impact.
AI Models For Fun and Profit by Walmart Director of Artificial IntelligenceProduct School
Product Management Event at #ProductCon NY on how to create AI models for fun and for profit by Jason Nichols, Director of Artificial Intelligence at Walmart Intelligent Research Lab.
Coders are writing tests and testers are writing code. This seemingly paradoxical truth is becoming more and more prevalent in companies of every size. But coders and testers still have very different cultures and processes and are actually sharing very little knowledge, even in companies that have supposedly taken down the wall between the disciplines.
In this talk, we explore the increasingly blurry lines, discuss some of the differences in the approaches coders and testers bring to the table, and provide practical examples of lessons learned by sharing knowledge, cultural perspectives and evolved wisdom.
Project Management for the Non-Project ManagerGary Gelb
This presentation was made for a guest lecture lesson in the course Managing Products & Brands at NYU. It's geared for non-PM professionals who need to know a little about project management, or for people finding themselves in this role without having had PM training.
Take Control of Your Career: A Personal Growth FrameworkC4Media
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2LmKyhy.
Aaron Randall talks about a Personal Growth Framework – a low-lift way of helping identify areas to grow that are exciting and valuable for career development. Filmed at qconlondon.com.
Aaron Randall is the CTO at Songkick, a live music startup aimed at making sure concert fans never miss their favourite artists live. Songkick develops web and mobile apps which serve over 19 million visitors a month.
Cracking the Coding Interview (http://www.amazon.com/dp/098478280X) is the #1 best selling interview book on Amazon.
Cracking the Coding Interview gives you the interview preparation you need to get the top software developer jobs. This is a deeply technical book and focuses on the software engineering skills to ace your interview. The book is over 500 pages and includes 150 programming interview questions and answers, as well as other advice.
Modern life relies on good tech. Good tech relies on quality code. This presentation lays out the rationale and research behind my draft software quality certification tentatively named Quality+.
AEM Maxed = Agile + Automation.
Time Warner Cable and iCiDIGITAL reveal how a stellar agile development team delivers an award-winning website using Adobe Experience Manager. Highlights include team interactions, scaling the team, collaborative moments, testing automation, and continuous integration. Also, they will share previews of a few open source attractions that will accelerate your Adobe Experience Manager delivery.
Case Study: Time Warner Cable's Formula for Maximizing Adobe Experience Manager Mark Kelley
Time Warner Cable and iCiDIGITAL reveal how a stellar agile development team delivers an award-winning website using Adobe Experience Manager. Highlights include team interactions, scaling the team, collaborative moments, testing automation, and continuous integration. Also, they share previews of a few open source attractions that will accelerate your Adobe Experience Manager delivery.
Learning Objective: Increase analytical and problem-solving skills
Description: What are the most valuable skills in today’s business world? Technical skills, people skills, and management skills are all critical skills needed to create impact. However, it is the integration of these skills that support professionals in increasing capacity to analyze and solve problems. The perspectives of the science involved in the technology, other people involved in the work, and ultimate effect on the business, must be considered for a solution to be successful. This session will feature an expert panel that will share their winning strategies and approaches to analyze and solve problems, and apply these models to complex business challenges.
Technical Excellence Doesn't Just Happen - AgileIndy 2016Allison Pollard
The ninth principle from the Agile Manifesto states that technical excellence enhances agility, but when the codebase is ugly and the deadlines are tight, most teams don’t choose to refactor mercilessly, adopt TDD, or evaluate automated testing tools—unless they have the proper support. In our experience working with multiple teams in a single codebase, developers can feel victim to a legacy codebase if only a few people are writing clean code or refactoring; guiding them on how to decrease technical debt while delivering their projects helps "unstuck" their other agile practices. We will talk about the challenges we’ve seen with Product Owners, Managers, and Scrum Masters interacting with teams at various stages of agile+technical excellence and how a focus on technical practices sparked a wider interest in craftsmanship. Learn how can you influence the team towards the right practices while fostering their sense of ownership. Getting serious about technical excellence requires support from technical and non-technical roles, and we’ll share how we partnered as coaches to help an organization through a technical turnaround with some tips for others who need to do the same.
Systems Engineering, Project Management and Bespoke Training for Industry Professionals in Switzerland and Europe.
Systems Engineering and Project Management are core engineering disciplines used to enable the delivery of complex projects within schedule and cost expectations.
Delivering complex projects demands cross-functional engineering disciplines such as Systems Engineering, Project Management, Safety Engineering, Product Development and Design Thinking. SE-Training has been founded to offer specifically tailored training courses that support the drive, ambition and success in providing innovate and high quality products and services.
There are a high number of engineering organisations based across Europe with diverse needs; SE-Training addresses these unique needs through structured and bespoke courses provided by expert engineering professionals and academics.
Be a Google PM Without Tech Background by Google Product LeaderProduct School
Main Takeaways:
- How to clear the technical bar in an interview
- Once you are a PM, how to build credibility with the Engineering team without a technical background
- How to solve product problems without a technical background
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Welocme to ViralQR, your best QR code generator.ViralQR
Welcome to ViralQR, your best QR code generator available on the market!
At ViralQR, we design static and dynamic QR codes. Our mission is to make business operations easier and customer engagement more powerful through the use of QR technology. Be it a small-scale business or a huge enterprise, our easy-to-use platform provides multiple choices that can be tailored according to your company's branding and marketing strategies.
Our Vision
We are here to make the process of creating QR codes easy and smooth, thus enhancing customer interaction and making business more fluid. We very strongly believe in the ability of QR codes to change the world for businesses in their interaction with customers and are set on making that technology accessible and usable far and wide.
Our Achievements
Ever since its inception, we have successfully served many clients by offering QR codes in their marketing, service delivery, and collection of feedback across various industries. Our platform has been recognized for its ease of use and amazing features, which helped a business to make QR codes.
Our Services
At ViralQR, here is a comprehensive suite of services that caters to your very needs:
Static QR Codes: Create free static QR codes. These QR codes are able to store significant information such as URLs, vCards, plain text, emails and SMS, Wi-Fi credentials, and Bitcoin addresses.
Dynamic QR codes: These also have all the advanced features but are subscription-based. They can directly link to PDF files, images, micro-landing pages, social accounts, review forms, business pages, and applications. In addition, they can be branded with CTAs, frames, patterns, colors, and logos to enhance your branding.
Pricing and Packages
Additionally, there is a 14-day free offer to ViralQR, which is an exceptional opportunity for new users to take a feel of this platform. One can easily subscribe from there and experience the full dynamic of using QR codes. The subscription plans are not only meant for business; they are priced very flexibly so that literally every business could afford to benefit from our service.
Why choose us?
ViralQR will provide services for marketing, advertising, catering, retail, and the like. The QR codes can be posted on fliers, packaging, merchandise, and banners, as well as to substitute for cash and cards in a restaurant or coffee shop. With QR codes integrated into your business, improve customer engagement and streamline operations.
Comprehensive Analytics
Subscribers of ViralQR receive detailed analytics and tracking tools in light of having a view of the core values of QR code performance. Our analytics dashboard shows aggregate views and unique views, as well as detailed information about each impression, including time, device, browser, and estimated location by city and country.
So, thank you for choosing ViralQR; we have an offer of nothing but the best in terms of QR code services to meet business diversity!
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Cracking the Coding Interview (Master Slide Deck)
1. Cracking the Coding
(& PM) Interview
Advice and Strategies for Software Engineering
and Product Management Interviews
Gayle Laakmann McDowell
Founder / CEO, CareerCup.com
Author of Cracking the Coding Interview,
Cracking the PM Interview, & The Google Resume
McDowell | CareerCup.com
January 2014
2. Technical Skills
Behavioral
Applying
My Background
• Software Engineer @ Google, Microsoft & Apple
– 3 Years on Google Hiring Committee
– Interviewed 150+ candidates
• Founder of CareerCup.com
• Author
– Cracking the Coding Interview
– The Google Resume
– Cracking the PM Interview [Product Management]
Process
• Interview coach for acquisitions & acquihires
McDowell | CareerCup.com
4. Technical Skills
Most Common CS Jobs
Big Company
Behavioral
PM
Dev
SDET
Startup
Research
Start Your
Own
Dev
Research
DO ALL
THE
THINGS
Senior & Up
Process
Applying
Junior
Sophomore
Freshman
McDowell | CareerCup.com
5. Technical Skills
Behavioral
Product Manager (“PM”)
==
“Associate Product Manager”
(Google, Yahoo, Facebook, etc.)
==
“Program Manager”
(Microsoft)
Process
Applying
What is a Product Manager?
McDowell | CareerCup.com
6. Technical Skills
Behavioral
• Manage the PRODUCT, not the PEOPLE
• “Build a great product for the users”
– Who are the users?
– What are the features?
– When will we launch?
– How do we launch?
– etc
Process
Applying
What is a Product Manager?
McDowell | CareerCup.com
8. Technical Skills
Behavioral
• Write code (duh)
• Architect systems
• Plus sometimes:
– Write specs
– Talk to users
– Figure out feature set
– Etc
Process
Applying
What is a Programmer?
McDowell | CareerCup.com
10. • Figure out what needs to be tested and
how
• Write code to automate testing
Technical Skills
Process
Applying
Behavioral
What is an SDET?
McDowell | CareerCup.com
12. • 5 - 10 min – Qs about resume
• 40 min – technical Qs
– Coding and algorithms
• 5 – 10 min – let you ask Qs, general
wrap up, etc
Technical Skills
Process
Applying
Behavioral
What to Expect
McDowell | CareerCup.com
13. Technical Skills
Big Company Evaluation (Devs)
Coding
Skills
Intelligence
Process
Applying
Behavioral
Experience
Personality
McDowell | CareerCup.com
Testing
aptitude, not
knowledge
14. Technical Skills
Behavioral
Applying
Process
Start-Ups
• Coding + Intelligence
• “Hit the ground running”
– Do you know “their” technologies?
• Entrepreneurial
– Have you started things?
– How much direction do you need?
but…
• Personality
it varies!
– Will you fit with the team?
McDowell | CareerCup.com
16. Technical Skills
Behavioral
Applying
Process
How You Are Judged
How did you do RELATIVE
to other candidates on
the SAME question?
It’s not about how
quickly you solved
the problem…
… it’s about how quickly
you solved it relative to
other candidates.
McDowell | CareerCup.com
18. Technical Skills
How to Get an Interview
– Education
– Work Experience
– Projects
– Github / Online Profile
• Make a kick-ass resume
Process
Applying
Behavioral
• Your “Pedigree”
McDowell | CareerCup.com
20. Technical Skills
How We Review Resumes
3.
Applying
Behavioral
1.
2.
Reject
4.
Process
Pull resume out of giant stack
Spot-check: company names,
positions, projects, schools.
Skim bullets to see if you’ve
written real code.
Interview
Go to next resume & whine about
how many more you have left.
McDowell | CareerCup.com
“Glanced
at,” not read.
15 – 30
seconds
21. How CS Resume
Should Look
One Page Only!
Unless > 10 years exp.
A Real Resume Format
with organized columns
Short (1 – 2 line bullets)
Focus on Accomplishments
not responsibilities
GPA if at least 3.0
max (in-major, overall)
3 – 4 Projects
Courses & independent
Finished or unfinished
List of Technical Skills
Short! Cut the “fluff.”
Observe: No Objective!
Objectives / summaries are
almost always useless.
22. Technical Skills
Talking to Recruiters
– What you’ve done (mobile app? Show it!)
– What you’re excited about
• Have a “pitch” ready
• Weird is okay
– (arrogant is not)
Process
Applying
Behavioral
• Show:
McDowell | CareerCup.com
24. Technical Skills
Behavioral
• Answer the question.
• Deliver a good answer.
• Communicate well.
– Nugget First
– S.A.R.: Situation, Action, Result
Process
Applying
Goals of Your Answer
McDowell | CareerCup.com
25. Technical Skills
Preparing for Behavioral Qs
• Create Preparation Grid for Projects
Behavioral
OS Project
Amazon Intern.
Enjoyed
Hated
Applying
Most Challenging
Hardest Bug
Process
+ Behavioral Grid [for PM & less tech. roles]
McDowell | CareerCup.com
26. Technical Skills
Structure 1: Nugget First
Behavioral
• Lead with your “thesis” / nugget
– Grabs the listener’s attention
– Gives them context for where you’re going.
A: I’m most proud of the way I
re-architected the …
Process
Applying
Q: What accomplishment are you
most proud of?
McDowell | CareerCup.com
27. Technical Skills
Structure 2: S.A.R.
What was the issue?
A ction
What did you do about it?
R esult
What was the impact?
Process
Applying
Behavioral
S ituation
McDowell | CareerCup.com
28. Technical Skills
Good Questions for Interviewer
Behavioral
• Qs you want to get answered
– How decisions get made
– Interaction betw devs, PMs, testers
• Qs that show interest / passion
• Qs that show knowledge / aptitude
– How did you solve problem with ___?
Don’t worry too much
about this stuff
Process
Applying
– What’s the architecture like?
McDowell | CareerCup.com
30. Technical Skills
How to study
• Study the basics
Behavioral
• Practice solving questions
Applying
– Complex algorithms generally unnecessary.
• Push yourself!
• Write code on paper
Process
– Don’t memorize!
– See: CtCI & CareerCup.com
McDowell | CareerCup.com
31. Technical Skills
Behavioral
Data Structures
• How to implement
• When to use (pros / cons)
Queues
Trees
Tries
Graphs
Vectors
Applying
Stacks
Heaps
Hashtables
Process
Linked Lists
McDowell | CareerCup.com
32. Technical Skills
Behavioral
• Implementation
• Space vs. Time
Complexity
Quick Sort
Merge Sort
Tree Insert / Find
Binary Search
Breadth-First
Search
Depth-First
Search
Process
Applying
Algorithms
McDowell | CareerCup.com
33. Technical Skills
Concepts
Behavioral
• Not just a concept – know how to code!
Big-O
Time / Space
Memory
Management
Recursion
Probability +
Combinatorics
Bit Manipulation
Process
Applying
Threading
McDowell | CareerCup.com
34. Technical Skills
Behavioral
• Necessary for “elite” tech companies
– Not necessarily otherwise (check interview
questions)
• MIT Open Courseware
– Freshman / sophomore level DS & Algo
courses
• Books
– CLRS (Algorithms)
• Online tutorials
• Practice implementing and using
Process
Applying
How to Learn CS Fundamentals?
McDowell | CareerCup.com
41. Technical Skills
Behavioral
Applying
Process
Product Design Qs: Example
How would you design a calculator for the blind?
Step 2: Understand the User
• What’s important to a blind child?
– Keeping up with the rest of the class
– Not feeling “different”
– Efficient input / output
• What about teachers, parents,
classmates, etc.?
42. Technical Skills
Behavioral
Product Design Qs: Example
How would you design a calculator for the blind?
Step 3: Structure
• Find a structure
– Otherwise, you’re just blabbering
Process
Applying
• One approach:
1.
2.
3.
4.
Make list of functions necessary
Discuss how to do input / output
Usability for non-blind
Summary
46. Technical Skills
Estimation Qs: How to Approach
1. Ask questions to resolve ambiguity
Applying
Behavioral
– Don’t make assumptions (yet)
2. Outline / Structure Your Approach
3. Break down the components
– Assume numbers when necessary
– State assumptions explicitly
– Round numbers to make your math easier
4. Sanity Check
Process
– Do your numbers make sense?
47. Technical Skills
Behavioral
Applying
Process
Estimation Qs: Example
How much money does Gmail make from ads every year?
Step 1: Ambiguous Information
• Profit or revenue?
• Past year? Or average over history?
• Gmail only? Or include Google Apps?
48. Technical Skills
Estimation Qs: Example
How much money does Gmail make from ads every year?
Process
Applying
Behavioral
Step 2: Outline Your Approach
(# of users)
x
(# clicks / year)
x
( $ / click )
49. Technical Skills
Estimation Qs: Example
How much money does Gmail make from ads every year?
Process
Applying
Behavioral
Step 3: Break down components
Estimate # of Gmail users in the US
1. Assume 300 million people in the US.
–
–
Exclude 0 - 12 years old and 65 - 75 years old
~ 200 million
2. Assume 80% of people use email
3. 80% of those have non-work account
… and so on …
50. Technical Skills
Behavioral
Applying
Process
Estimation Qs: Example
How much money does Gmail make from ads every year?
Step 4: Validate Numbers
• Could revenue be $5 billion?
• No, because…
– Google’s annual revenue is ~$40 billion
– $16 / US citizen (not just Gmail users)
52. Technical
Knowledge & Trivia Questions
• Not key focus at “elite” tech companies.
Estimation
– If asked, tends to focus more on DS
knowledge than language knowledge
• If you don’t know, try to deduce the
answer
Product Design
– How would language designer do it? etc
McDowell | CareerCup.com
53. Technical
Estimation
Product Design
Coding & Algorithm Questions
1. Understand the question
– Clarify, remember key details, etc.
2. Draw an example
–
“Sufficiently interesting”
3. Talk out loud
4. Analyze
– Does it work? What’s the big O time / space?
– Do YOU understand it?
If you’ve heard a
5. Code (SLOWLY)
question before,
6. Test + fix (CAREFULLY)
admit it.
McDowell | CareerCup.com
54. Technical
Estimation
What does a “good coder” do?
• Be methodical. Don’t try to rush.
• Don’t code if you don’t understand
• Reasonably Bug Free
–
–
Thorough testing (and careful fixing)
Check for error conditions
Product Design
• Clean coding
–
–
–
Use other functions
Good use of data structures (define own if useful)
Concise and readable
McDowell | CareerCup.com
55. Product Design
Estimation
Technical
Whiteboard Coding Tips
Code in the FAR top left corner
Write small & straight
Pseudocode if you’d like
Use arrows to insert new code snippets
Use “good” variable names, then
abbreviate
• “Breadth-First” Coding
•
•
•
•
•
McDowell | CareerCup.com
56. Technical
“Breadth-First” Coding
• Divide problems into sub-components
• Ex: Ransom Note
– Write as one big function?
– OR… modularize!
Product Design
Estimation
– Modularize & Structure
McDowell | CareerCup.com
62. Technical
Estimation
Product Design
“Breath-First” Coding
•
“Depth-First” Coding (One big function)
– Messy
– Time consuming
– Poor coding style
•
“Breadth-First” Coding (Modularized)
–
–
–
–
–
“Finishes” algorithm immediately
Often allows you to skip details
Easier to test & fix issues
Demonstrates good coding style
Keeps YOU organized
McDowell | CareerCup.com
63. Technical
Estimation
Common Mistakes
•
•
Ignoring information given
Not using examples
– To design algorithms
– While writing code
•
“Pushing through” code when confused
Product Design
– Incoherent thoughts -> incoherent code
•
•
Diving into code too quickly
The details:
– Off-by-one, < vs <=, division (and any math)
McDowell | CareerCup.com
64. Technical
Types of Interview Questions
Object Oriented Design
System Design
“Reverse a Linked
List”
“Design a Parking
Lot”
“Design a
Web Crawler”
Product Design
Estimation
Coding & Algorithms
McDowell | CareerCup.com
65. Technical
Types of Interview Questions
Coding & Algorithms
Object Oriented Design
Estimation
Pattern Matching
Simplify & Generalize
Product Design
Base Case & Build
Data Structure
Brainstorm
McDowell | CareerCup.com
System Design
66. Technical
Algorithm Qs: Pattern Matching
Coding & Algorithms
Estimation
Pattern Matching
Simplify & Generalize
Product Design
Base Case & Build
Data Structure
Brainstorm
Object Oriented Design
System Design
Q: Write code to reverse the order of words
in a sentence.
“dogs are cute”
“cute are dogs”
Similar to: reverse characters in a string.
“dogs are cute”
“etuc era sgod”
A: Reverse full string, then reverse each
word.
McDowell | CareerCup.com
67. Technical
Algorithm Qs: Simplify & Generalize
Coding & Algorithms
Estimation
Pattern Matching
Simplify & Generalize
Product Design
Base Case & Build
Data Structure
Brainstorm
Object Oriented Design
System Design
Q: Design algorithm to figure out if you can
build a ransom note (array of strings) from a
magazine (array of strings).
Simplify: what if we used characters instead
of strings?
Build array of character frequencies.
Generalize: how we can extend answer to
words?
A: Build hashtable from word to frequency.
McDowell | CareerCup.com
68. Technical
Algorithm Qs: Base Case & Build
Coding & Algorithms
Estimation
Pattern Matching
Simplify & Generalize
Product Design
Base Case & Build
Data Structure
Brainstorm
Object Oriented Design
System Design
Q: Design algorithm to print subsets of set.
{a, b, c}
{}, {a}, {b}, {c}, {a, b},
{a, c}, {b, c}, {a, b, c}
S({})
S({a})
S({a, b})
S({a, b, c})
{}
{}, {a}
{}, {a}, {b}, {a, b}
?
A: Build S(n) by cloning S(n-1) and adding n
to the cloned sets.
McDowell | CareerCup.com
69. Technical
Algorithm Qs: Data Structure Brainstorm
Coding & Algorithms
Estimation
Pattern Matching
Simplify & Generalize
Product Design
Base Case & Build
Data Structure
Brainstorm
Object Oriented Design
System Design
Q: There are 10^10 possible phone #s.
Explain how you could efficiently implement
assignSpecificNum(num) and
assignAnyAvailableNum().
Array (sorted)? Too slow to remove num.
Linked list? Too slow to find specific num.
Hash table? Can’t iterate through free nums.
Tree? Ah-ha!
A: Store free #s in BST. Remove when taken.
McDowell | CareerCup.com
70. Technical
How To Solve Algorithm Questions
Coding & Algorithms
Estimation
Pattern Matching
Simplify & Generalize
Product Design
Base Case & Build
Data Structure
Brainstorm
Object Oriented Design
System Design
Compare to similar problems.
Solve first for a simplified / tweaked problem.
Solve for n = 1, and build solution for n = 2.
Try to apply data structure to solve problem.
McDowell | CareerCup.com
71. Technical
Object Oriented Design
Estimation
Coding & Algorithms
Object Oriented Design
System Design
Handle Ambiguity
What about the question is ambiguous?
Design the Core Objects
What are the main objects in the system?
Product Design
Analyze Relationships
How are the objects related to each other?
Investigate Actions
What are the main operations?
McDowell | CareerCup.com
72. Technical
Object Oriented Design
Product Design
Estimation
Coding & Algorithms
Object Oriented Design
System Design
Handle Ambiguity
Is it a single restaurant, or part of a chain?
How would you
design the data
structures and
objects for a
restaurant?
Design the Core Objects
Guest, Party, Table, Server, Host, …
Analyze Relationships
Server and Host are both Employees…
Investigate Actions
A Party is seated at a Table by a Host…
McDowell | CareerCup.com
73. Technical
System Design
Estimation
Coding & Algorithms
Object Oriented Design
System Design
Handle Ambiguity
What about the question is ambiguous?
Make Believe
Pretend there wasn’t so much data & solve
Product Design
Get Real
Go back to the real problem. What breaks?
Solve Problems
Solve the issues you just found.
McDowell | CareerCup.com
74. Technical
System Design
Product Design
Estimation
Coding & Algorithms
Object Oriented Design
System Design
Handle Ambiguity
Do the words need to be in a specific
order?
Given millions of
documents, find
all documents
which contain a
list of words.
Make Believe
Assume everything can fit on one machine.
Get Real
Must split up data across machines.
Solve Problems
Divide hash table by file or by keyword?
McDowell | CareerCup.com
75. Technical
Whew! All Done!
Coding & Algorithms
Object Oriented Design
System Design
Estimation
Pattern Matching
Simplify & Generalize
<Gulp> This is a lot of
stuff. Do I need to get
everything right?
Product Design
Base Case & Build
Data Structure
Brainstorm
McDowell | CareerCup.com
76. Technical Skills
Behavioral
Applying
Process
Evaluation is RELATIVE,
not absolute.
It’s not about how
quickly you solved
the problem…
<Gulp> This is a lot of
stuff. Do I need to get
everything right?
</Gulp>
… it’s about how quickly
you solved it relative to
other candidates.
McDowell | CareerCup.com
78. Technical Skills
After Your Interview
• Follow-up with your recruiter
Applying
Behavioral
– No response != rejection
• You have no idea how well/poorly you
did.
– Seriously. I know you think you do. But you
don’t.
• Lots of randomness.
Process
– So if you fail, get up and try again.
McDowell | CareerCup.com
80. Technical Skills
Behavioral
Applying
But I hate negotiating!
• Welcome to the club!
• You ARE in demand.
• Your offer will not be revoked.
Is this conversation SO terrible that
you’re willing to give up $1000+**?
Process
** and likely more
McDowell | CareerCup.com
82. Technical Skills
Behavioral
Applying
Closing Advice
•
•
•
•
•
Do projects
Study for your interviews
Chase interviews
… but don’t chase money
If possible, go to an “elite” tech company
– (But don’t stay too long if that’s not what you
want!)
• Check-in on your career.
Process
– Is this what you want to do with your life?
McDowell | CareerCup.com