background preloader

Learning

Facebook Twitter

Coursera - Free Online Courses From Top Universities. TopCoder, Inc. | Home of the world's largest development community. Programmr | Become A Programming Guru! Cracking the Coding Interview: 150 Programming Questions and Solutions: Gayle Laakmann McDowell: 9780984782802: Amazon.com: Books. ABC: Always Be Coding — Tech Talk — Medium. Be honest. Are you a good engineering candidate? How are you measuring yourself?

How many companies have you interviewed at? What is your onsite-interview to offer ratio? Try the following formula (that I’ve totally made up in a vacuum and ultimately means nothing): # x = number of companies interviewed with onsite# y = number of offers receivedvalue = 100 * log(x) * y / x If your value is < 90, you should read this. Who am I? I don’t have a college degree. Since then I’ve worked at Double Helix, Namco Bandai, Google, Obvious and Square.* I’ve also received offers from companies such as Naughty Dog, Activision, Riot Games, Blizzard, Pinterest, Goldman Sachs, and more.

I’ve interviewed at least 500 engineering candidates. I will tell you that there is absolutely no sure-fire way to getting hired. The best I can do is tell you how you can be adequately prepared. Technical Tips ABC (Always Be Coding). General Tips I can’t claim to be an expert here. Know why you’re there. Process vs. Thread. Processes vs Threads A process is an executing instance of an application. What does that mean? Well, for example, when you double-click the Microsoft Word icon, you start a process that runs Word. A thread is a path of execution within a process. Also, a process can contain multiple threads.

It’s important to note that a thread can do anything a process can do. Another difference between a thread and a process is that threads within the same process share the same address space, whereas different processes do not. MultiThreading Threads, of course, allow for multi-threading. If we were dealing with an application that uses only one thread, then the application would only be able to do one thing at a time – so printing and responding to user input at the same time would not be possible in a single threaded application. Each process has it’s own address space, but the threads within the same process share that address space. Subscribe to our newsletter for more free interview questions. Challenges for coders. Google Interview Questions | CareerCup. Google Interview Questions Page: Filter: Sort By: Date | Number of Comments | Most Recent Comment | Votes Add Question CareerCup is the world's biggest and best source for software engineering interview preparation.

How Can You Help CareerCup? Find Out When Gayle / CareerCup / Cracking the Coding Interview is in Your City Top Companies Top Jobs Top Topics What's Going On Report a Bug or Issue Books Cracking the Tech Career is a comprehensive book on getting a job at a top tech company, while Cracking the Coding Interview focuses on dev interviews and Cracking the PM Interview does this for PMs. Learn More Videos CareerCup's interview videos give you a real-life look at technical interviews. Learn More Resume Review Most engineers make critical mistakes on their resumes -- we can fix your resume with our custom resume review service. Learn More Mock Interviews Our Mock Interviews will be conducted "in character" just like a real interview, and can focus on whatever topics you want. Learn More. TopCoder, Inc. | Home of the world's largest development community. Programming Interview Questions | CareerCup.

The Measure Of Success. What makes a successful project? Waterfall project management tells us it’s about meeting scope, time and cost goals. Do these success metrics also hold true to agile projects? Let’s see. In an agile project we learn new information all the time. It’s likely that the scope will change over time, because we find out things we assumed the customer wanted were wrong, while features we didn’t even think of are actually needed.We know that we don’t know everything when we estimate scope, time and budget.

This is true for both kinds of projects, but in agile projects we admit that, and therefore do not lock those as goals.The waterfall project plan is immune to feedback. All kinds of differences. What is success? In any kind of project, success has an impact. This impact is what makes a successful project. The problem with all of those, is that they cannot be measured at the delivery date, if at all. And if we’re wrong, that’s good too. So agile is better, right? Yes, I’m pro-agile. Coderpower, le concours d'algo continue et cette fois, vous pouvez gagner un Oculus Rift - Korben. New programming techniques and the productivity curve. Though I love learning new programming techniques and technologies, I often struggle to make them a part of my normal development processes.

For example, it took years before I finally started using regular expressions on a normal basis. The reason? The productivity curve: You may have seen a chart like this before; the productivity curve is used to show one of the challenges of software delivery. The general idea is that when you first use a new product (or technology), your productivity always plummets in the short term. So the key is to push through that initial dip, and eventually you get to the increased productivity that comes with mastering the new technology. However, if you’ve just decided you want to pick up a new programming technique, it’s a little more difficult. On the rare occasions where I needed to make a change to existing regular expressions, I’d end up slogging through references and online tutorials to try and make sense out of it.

Mentoring Humans and Engineers. James Grenning on Technical Excellence.