Tech IndustryOct 19, 2017
Amazononcall

How to be a better software engineer?

Joined Amazon 2yrs ago straight from school where i went for electrical engineering thru probably the easiest tech interview ever. I didn't know ds & algos, i still don't know. I feel like I'm a mediocre engineer who just completes sprint tasks at best. Recently got promoted and i feel like i should be better. Tips?

Microsoft doobledoo Oct 19, 2017

Woah. No DS? No algos? My god, I had those during a design interview there ;) Just kidding. Kid, you got hella lucky. But I would suggest making a reading list of good books to shore up those engineering skills and complete a certain number of them every year. Form a study group around them with other new hires. It’s a long term investment. It will pay off.

Microsoft corpcult Oct 19, 2017

I just can't understand this industry. I've got 5 years experience and have been in a senior engineering role supporting a million DAU's. Still haven't had an on-site with amazon.

Amazon retire Oct 20, 2017

Hiring practices don't make sense anywhere. Long story time! I interviewed at MSFT after working in games for a while. In was in the last interview before lunch and the guy was quite pleased that I wrote our tools and the game client in C#. We went through algorithms and I nailed it. He asked if I did server work and what language that was in. He has quite offended when I said Java. Why would I write the client in C#, but the sever in a trash language like Java? That was his attitude toward it. I explained that we already had a pretty solid code base from other projects and it was much more efficient to just utilize what was there and make some tweaks for our game. "Oh, so you just stole code from another team." "Um...we utilized our existing resources, which cut down on production time and maintained consistent quality across products. We reuse code all the time" That was it. Interview wrapped up and I did not make it past lunch. How dare I follow best practices?

Amazon mUqi08 Oct 20, 2017

Interviewers are just like us, they are imperfect. The smart one knows he might work with you later so he is nice but fair, the stupid one abuses the power to get rid of competition and burn bridges before they were built. You'll see this guy again in another company in the future and you'll interview him. Payback time.

Amazon Amauzer Oct 19, 2017

Take the algorithms class on Coursera

Microsoft doobledoo Oct 19, 2017

Hot tip. Thanks a million.

Intel sillycon Oct 19, 2017

what type of work do you do? (lab126 i presume)

Uber otter Oct 19, 2017

Work on harder problems. Take on larger scope and more ambiguity.

Amazon y5 Oct 20, 2017

I guess OP knows enough to write java code but DS and Algo are not his/her strong suit. There are many many engineers, who if interviewed again, will not pass DS and algo tests.

Amazon mUqi08 Oct 20, 2017

Divide and conquer, pick your battle wisely, and start early with as much parallelism as possible. The rest is communication skill like expectations management and verify your sources and requirements before trusting them.

Microsoft gorgonzola Oct 20, 2017

Try reading Kleinberg and Tardos. It's a super nice intro to algorithms and doesn't assume a whole lot (except obviously some basic set theory). It talks about those #3hot5me BFS, DFS, and #notMyInterviewer algorithms the cool kids love to talk about. CLRS is also a good algo book. Also every day is another day to learn! Keep your head up!