|
Che Delilas posted:Job seekers: don't feel bad if programming is not the #1 activity in your life. Some companies may weed you out because you don't spend your precious free time doing what you do at work. That's a good thing because they wanted you to spend 14 hours a day at the office and detected that you wouldn't be willing to do that. Bullet dodged. But see, just because you have other things you want to do in your spare time, even that doesn't mean that programming isn't the #1 activity in your life. If you work a normal 40 hour week, that's nearly 1/3rd of all of the time you spend doing anything, including sleeping; certainly more time spent doing that than any other one thing (except probably sleeping). And somehow that's not necessarily enough? I love the poo poo out of programming; 40-50 hours of it a week is plenty, I'd like to spend, you know, maybe 10 or so of the other hours of free time in the week doing poo poo like biking or skiing. In other words, I spend like, an order of magnitude more time programming at work than I do on any of my other hobbies.
|
# ? Aug 7, 2013 21:13 |
|
|
# ? May 15, 2024 03:35 |
|
Just because you have a bunch of personal projects doesn't means you have to spend all day every day programming. Like I said earlier, just about every one of my projects in the past few years have been weekend projects. I may have the idea saturday evening, work until early Sunday morning, then finish up sunday afternoon, and then deploy by sunday evening. All while making time to go for a bikeride, or walk my dog. Linus Torvalds released the first version of git a week after starting the project. Good programmers can get things done quickly, its the lovely programmers who think it has to take 50-60 hours a week to maintain a portfolio of projects.
|
# ? Aug 7, 2013 22:08 |
|
Bognar posted:I would say the iterative and recursive solutions are just as easy in terms of difficulty. However, recursion is slightly more advanced than standard iteration and, sadly, a lot of people can't properly grasp it. Wait what? People actually working jobs have problems with recursion?
|
# ? Aug 7, 2013 22:12 |
|
KidDynamite posted:Wait what? People actually working jobs have problems with recursion? There are a large number of "programmers" who have no business coding anything. Many of them started during the dot-com era since saying you knew a programming language was basically a free ticket to a high paying job. From there they went from "Learn PHP/VB In One Day" books to heaps of badly built applications. When the bubble burst, a lot of them started to pick up jobs at larger corporations who were hiring programmers without really knowing what to do with them. When those corporations downsize, these types send resumes all over and we tend to get a lot of them. 13 years of experience sounds pretty good initially, until you get them into an interview and they don't know the difference between a class and a struct after working in .NET for 10 years.
|
# ? Aug 7, 2013 22:35 |
|
Tres Burritos posted:God I hope that I never get a question like that. I've never gotten one that's just "You need to have memorized this thing". I basically reeled off a quick in-place version of QuickSort, I had done some revision on it because I figured it might come up. QuickSort is like fifteen lines of code so it's not exactly hard to memorise. I also understand and explained it, of course.
|
# ? Aug 7, 2013 22:40 |
|
All I remember about quicksort's implementation is you pick an element in a sequence, pivot that into its correct position, and then repeat that for each of the sub-sequences on each side of that correctly-positioned element. And that'll work because pivoting puts the larger elements on one side and the smaller elements on the other side. From that I could put most of it together in a few minutes and I'd only have trouble remembering edge cases, because I am almost comically forgetful.
|
# ? Aug 7, 2013 22:48 |
|
Bognar posted:Fibonacci is in the same category as Fizz Buzz - it's a quick, effective filter to weed out the idiots. Gundam-tier - explain why a sublinear solution doesn't exist unless you have a magical machine which can do arbitrary length integer arithmetic in constant time.
|
# ? Aug 7, 2013 22:49 |
|
Cicero posted:On to more important things: This is a pretty fantastic idea. If someone just got two or three example resumes that applied to tech jobs and put them in the OP, I think that would help out a lot of people.
|
# ? Aug 7, 2013 22:53 |
|
I would definitely appreciate sample resumes.
|
# ? Aug 7, 2013 22:57 |
|
Tunga posted:QuickSort is like fifteen lines of code so it's not exactly hard to memorise. I also understand and explained it, of course. Tres Burriots, you could nail this question even without knowing quicksort. If you're in that situation, start talking. You ought to know enough to put "sort(int[] array) {" in your language up on the board. If you're completely lost on the algorithm, start asking for hints. Interviewers don't want to sit there just looking at you, it's a waste of everyone's times. And for a RCG/junior employee, I'm expecting to give them work that they'll need to ask about. So the interview is a little mock session where you don't know how to proceed and I'm going to gauge how easily you pick up on hints and start working vs. if I have to explain where every semicolon goes. Explaining what's going on inside your head is crucial. It doesn't matter if you're mentally doing Rubik's cubes and eliminating world hunger, if no words are coming out of your mouth talking about it I have to assume you're daydreaming about hitting the It's-it factory on the way back to the airport. Which might make you a great culture fit, but I really need a coder.
|
# ? Aug 7, 2013 23:08 |
|
FamDav posted:Gundam-tier - explain why a sublinear solution doesn't exist unless you have a magical machine which can do arbitrary length integer arithmetic in constant time. Do it with template metaprogramming and then dont count the compile time
|
# ? Aug 7, 2013 23:15 |
|
JawnV6 posted:Tres Burriots, you could nail this question even without knowing quicksort. Yeah, I make a conscious effort to never leave "dead-air" but then I get super conscious of saying "ummmmm" and "like" a lot. VV. I also try to ask a lot of questions so I know I'm going in the right direction, but I probably don't ask as many as I could.
|
# ? Aug 7, 2013 23:41 |
|
astr0man posted:The whole point of questions like FizzBuzz isn't to make sure that you can write a for loop with if (divisible by 3)/elif (divisible by 5) plus the extra if (divisible by both) clause, it's to see your overall thought process and how you approach a problem. Personally I also feel that I have an ability to very quickly spot how much flair and skill people have for programming by the way they talk and write code at the same time. I'm sure other people can do the same. By just having them write that simple chunk of code, an experienced dev should be able to weed out the bad, although they should of course give for credit for the fact that it's tough to code on a whiteboard, plus the stress of the interview situation. Steve French posted:This is what is amusing to me: people in this thread telling others that they should have a GitHub profile with personal projects on it so that they can get a job because some companies value that highly because it is an indicator of someone who doesn't just code for a paycheck... which is sort of what a job is...
|
# ? Aug 7, 2013 23:45 |
|
bonds0097 posted:Excuse me if I'm mistaken but you seem to be assuming we're all web developers. If you write software for embedded systems, or do systems programming, or any number of other disciplines aside from Web Programming, what you're talking about isn't all that relevant. This is actually something that bothers me, because I don't have the slightest clue how to create a tumblr clone, and it sounds incredibly complex. I have no idea what kind of project I could create that would look good to developers, and every time I hear something like this I feel like the answer is probably nothing.
|
# ? Aug 8, 2013 00:15 |
|
JawnV6 posted:Tres Burriots, you could nail this question even without knowing quicksort. Although the "burritos" comment is wasted on me (I guess it's a US thing). One thing that came up in my interview today was using logical bitwise operators to perform a circular shift on a byte. I absolutely remember doing that at uni but it was six or seven years ago and I was drawing a blank so I just said "I remember doing this but it was years ago and I'm kind of lost on where to start." So we basically worked through it together. You don't have to know all the answers and sometimes admitting that is just as valuable as if you had known it. Tunga fucked around with this message at 00:46 on Aug 8, 2013 |
# ? Aug 8, 2013 00:44 |
|
Pilsner posted:I'm pretty certain that solving the problem is the primary task of a coding interview question, and thinking out loud a close second. I mean, how would you rate a guy who talked and talked and tried all sorts of things to solve it, but ultimately wasn't able to solve FizzBuzz on the whiteboard? Maybe not hire, but he's heads above the person who doesn't say a word while writing a solution on the board before returning to their seat, awaiting the delivery of their next work-unit for skills provenance beep boop. 100% coding all the time always is rare. More often, you actually have to communicate with other professionals. Architects, customers, other programmers, communication is a rarer skill than pure coding. Tunga posted:Although the "burritos" comment is wasted on me (I guess it's a US thing). I mentioned the name of another poster who could benefit from the advice. My old company would specifically ask questions that we expected a candidate to not know the answer to, partially to weed out the types who won't admit fault no matter how glaringly obvious, partially to see how someone reacts in that situation. It's not failsafe since interviews can be stressful, but it's handy.
|
# ? Aug 8, 2013 01:39 |
|
JawnV6 posted:Maybe not hire, but he's heads above the person who doesn't say a word while writing a solution on the board before returning to their seat, awaiting the delivery of their next work-unit for skills provenance beep boop. 100% coding all the time always is rare. More often, you actually have to communicate with other professionals. Architects, customers, other programmers, communication is a rarer skill than pure coding. If I actually had anything to express while doing FizzBuzz, other than my surprise and elation at having encountered the mythical fizzbuzz interview question, I'd feel like I bombed the interview, because I'd be wondering what kind of idiot the interviewer must think I am that I found fizzbuzz to require thought.
|
# ? Aug 8, 2013 01:52 |
|
FamDav posted:Gundam-tier - explain why a sublinear solution doesn't exist unless you have a magical machine which can do arbitrary length integer arithmetic in constant time. Closed form solution, O(log n) square-and-multiply ops, you just need sublinear floating point multiply.
|
# ? Aug 8, 2013 01:54 |
|
fritz posted:Closed form solution, O(log n) square-and-multiply ops, you just need sublinear floating point multiply. doubles lose integer precision at 2^53+1, so that won't work. the nth fibonacci number takes on the order of n bits to represent. again, unless you have a magical machine which can do arbitrary decimal math in sublinear time with respect to the number of bits, you cannot write a sublinear fibonacci algo. its like you guys have never even touched a computer.
|
# ? Aug 8, 2013 02:12 |
|
JawnV6 posted:I mentioned the name of another poster who could benefit from the advice. My old company would specifically ask questions that we expected a candidate to not know the answer to, partially to weed out the types who won't admit fault no matter how glaringly obvious, partially to see how someone reacts in that situation. It's not failsafe since interviews can be stressful, but it's handy. This was common for us as well. We'd just keep asking questions about more and more details, or getting lower and lower level. It was a good way to spot people who think they can bullshit their way around not knowing something, which is particularly prevalent in security.
|
# ? Aug 8, 2013 02:22 |
|
Most programmers cannot code QuickSort correctly. Incidentally, someone recently "improved" QuickSort to have two pivots, which reduces the total number of swaps on average and benchmarks on large data sets reveal significant performance benefits; http://anshu-manymoods.blogspot.com/2009/10/dual-pivot-quicksort-in-java.html
|
# ? Aug 8, 2013 02:38 |
|
DAT NIGGA HOW posted:Just because you have a bunch of personal projects doesn't means you have to spend all day every day programming. Like I said earlier, just about every one of my projects in the past few years have been weekend projects. I may have the idea saturday evening, work until early Sunday morning, then finish up sunday afternoon, and then deploy by sunday evening. All while making time to go for a bikeride, or walk my dog. We just moved into a new office, and the CEO bought us a VERY nice billiards and ping pong table. One of the developers built in 6 hours a very sweet Ladders application that uses Elo Rating to compare the strength and weaknesses of every player in the office, and then the following weekend he used HTML5 charts for the first time ever and figured out some awesome ways to graph trends over time. Anyway, most of us work 40 hours a week. But we also get unlimited vacation time, and upper management is keenly aware when we put in extra time and effort. I am planning to take 3 weeks off in February. I could probably take the entire month off (other people have), but that would be a REALLY expensive vacation! In 8 hours, I wrote an application to do master metadata management of SQL Server system configurations, and automatically highlight potential configuration issues across all clients databases. Some time in the distant future I will add cool features on top I already know how to implement, but just don't want to waste my precious summer weekends indoors coding. I've also played with ways to visualize XML query plans in the past, inspired by tools like SQL Sentry Plan Explorer and SSMSTools, and also have some ideas on how to make sense of SQL queries generated by LINQ. The code is in my head, I just don't want to use free time to write it so it can be shared with others. I'll admit, in the past, I would revolve my life around programming, but not any more. I generally don't make design mistakes now and I generally just think up a great idea and implement it. What's funny is that when my life revolved around programming, I got very little done, because there was no sense of urgency. I'd do academic things like simulate Haskell typeclasses in C#, I read over 500 computer science/programming books in a 5 year span, ranging on topics from type theory, to OO, to numeric computing, to computer graphics, to network security, to system administration, to home automation, etc. Now that I am doing normal hobbies, like ballroom dancing and learning to cook, I am SO much more focused and aware of my time. A lot less theory, a lot more practice.
|
# ? Aug 8, 2013 03:23 |
|
Z-Bo posted:Most programmers cannot code QuickSort correctly.
|
# ? Aug 8, 2013 03:31 |
|
Yeah I could have sworn that was discovered before the millennium
|
# ? Aug 8, 2013 04:44 |
Did HOW just compare himself to Linus?
|
|
# ? Aug 8, 2013 05:15 |
|
Don Mega posted:Did HOW just compare himself to Linus?
|
# ? Aug 8, 2013 06:00 |
|
e: wrong thread
|
# ? Aug 8, 2013 06:13 |
|
Z-Bo posted:1) I've worked with people before who only do programming to pay the bills. It is absolutely awful. Working with people who have no pride in their work sucks, but the idea that programmers should also spend their spare time programming is ridiculous. You want me to write a code, pay me. Otherwise I'll be in the garage puttering around as I am wont to do. a github - or any other way to inspect code they've written - is a reasonable thing to ask a junior programmer for, because you're hiring someone based simply on their ability to properly work the machinery. After that, it's much more about how they interact with others, how they work within larger systems, how they architect those larger systems when given the chance and how well they respond to change, which is really just something you have to discover on your own after you hire them.
|
# ? Aug 8, 2013 06:26 |
|
you know what's absolutely awful? This:Z-Bo posted:We will probably throw out and replace all our existing code a year from now anyway. It's just how we do things
|
# ? Aug 8, 2013 06:53 |
|
rotor posted:you know what's absolutely awful? This: You must not have heard how nice their billiards table is.
|
# ? Aug 8, 2013 06:55 |
|
Cicero posted:Take all the following with a huge grain of salt: I read all the advice, but I'm just going to quote this post, to save space. -I'm not sure how to fix my indentation. Someone suggested I find another template to copy, I'll probably do that. Looking at the example resumes that were linked in this thread, I don't actually know how to emulate them. I've just been using Google Docs. -I'm not sure how to give details for my Verizon Wireless internships. Here's what I have now: Verizon Wireless - Summer Internships (June - September, 2006 and 2007) Field testing and analysis with Baseline Engineering System design and analysis for optimization and growth with RF Engineering Normally, interviewers ask me about this, and I go into detail, which is exactly what I want. I can actually explain the kinds of problems that required fixing and the types of solutions I applied to them. I can definitely agree that it needs more detail, but I just don't know how to give any relevant detail to people who aren't already familiar with the job positions within VZW. What I'm hoping with this description is that employers will get just enough of an idea to see that it's related to engineering through more than just the title and be more compelled to ask me questions; but when I look at it, it doesn't actually look any more descriptive to me. -I'm not sure what else to do with related courses. Shouldn't it be a list? Should I maybe just structure it as one instead? -I don't really have any code hosted anywhere to be very specific about. I did contribute some stuff for an open source server for a video game I used to play, but I'd rather not link it. The code is fine, I think, but the game was player-run, and so a lot of the developers were... immature. It's just not something I want an employer to associate with me. Am I overthinking things? Should I try to host this code externally and link it in my resume? -I need a Github account.
|
# ? Aug 8, 2013 08:49 |
|
Zero The Hero posted:I read all the advice, but I'm just going to quote this post, to save space. Besides Cicero's advice... Your resume isn't very scannable and seems to assume that the person reading your resume is a mind reader and already knows about you. Your indentation is weird, but even worse is when I initially did my lazy scan all it looked like was you had one job doing data entry. Never saw that you did 2 summers worth of internships at Verizon. It should be very simple: quote:Verizon Wireless (in bold) The reason I point out this weird nit-picky detail is because it all adds up. You need to look like you know what you're doing. If I was a .NET guy, I'd be annoyed that you use "LinQ" instead of using LINQ. I'm just guessing that LinQ is not a common styling of LINQ. If I was reading a resume and it read, "HtmL", "CsS", or "PhP", I would already be very negative about the person. It's a flag that you're not really someone who has actually used the technology which leaves some doubt in my head of whether or not you actually worked on the project or just let everyone else do the work and copied the technologies/languages they used. Resumes don't have to be perfect but they're a reflection of your organizational and communication skills so any flaws the company (either HR or the technical person who's going to interview you) can pick out already puts you below all the other applicants. They have no idea who you are (or you could have just skipped the resume) so your resume needs to show them that you're legitimate. Another thing is, unless you are applying for a job that has a heavy math emphasis, I would nix out all the math stuff in the Related Course Work section. If you are applying to jobs with a math focus, you need to have a separate resume with much clearer descriptions of your math related work. You should be describing the courses and programs that you wrote for all the classes that "required teamwork" in detail. Everyone says they were in team settings at their school, like wow great you chatted with some of your friends during class and "collaborated" on that homework assignment!
|
# ? Aug 8, 2013 10:12 |
|
Tunga posted:I have an interview this afternoon for an Android dev role, it's exactly what I want but it sounds like they're looking for someone more senior than me. I'm six years out of uni with a BSc in CS (UK) and have been working at a software company ever since as the only technical person in a 4-7 man sales office, doing customer support, custom projects, product triage, prioritisation, some internal IT, and recently a bit of actual product dev. Our HQ is in Seattle so I work with them a lot to make sure the UK arm gets what it needs. I know our software and industry inside out, unfortunately it's kind of niche (mail sortation/data quality) and I really want to get into mobile dev. quote:I've written quite a lot of code during that time, mostly on bespoke projects for customers which I specced, designed, wrote and supported from scratch. Nothing huge, maybe 2-3 thousand lines at most. But it was 95% done in C# because we were a complete Windows shop. Oh, I guess fake it 'til you make it? quote:Obviously I can try spin this in a positive way: I had to teach myself C#, I'm well practised at find solutions to problems by myself, and I'm good at working on ten different things at once if needed. quote:Something I'm not really sure about is salary. I earn £35k right now but I have a lot saved up and I don't really care about money as much as I do getting a job that I enjoy. I would happily take a pay cut to get something in mobile dev but people tell me that I shouldn't ever take a pay cut. I hate that everything is so money focused. Admittedly those people are mostly non-technical so I'm hoping it's fine if I say "I earn this much, I'd be happy with the same, but also that isn't my motivation here so I wouldn't want that to be a sticking point." I keep reading this paragraph of yours and I want to just slap you over and over. I hope you did not actually say that last line. What in the loving gently caress, "happy with the same" are you loving kidding me? You're killing me Smalls. quote:Edit: here's my CV: Reduce your info at the top into two lines. First line is your address, Second line contains phone and email. I didn't read that opening paragraph of your resume and no one else will either. Just get rid of it. Same thing with that intro paragraph for your first/current job. Almost any section where you write in a complete sentence probably needs to be eliminated and reduced to lists or if its about what you did at the job, a short action verb description of what you did. This isn't an essay. All your action verbs for your current job are in the past tense. But your other "jobs" as a Java Workshop Demonstrator and Volunteer Award Leader are all in the present participle. Yet you haven't worked at those positions in 7 years and 3 years respectively. Overall there are some grammar issues that you can probably solve yourself by speaking your resume out loud. Edit: Just found your other posts about the interview. Please, I must know that you did not say "happy with the same" Strong Sauce fucked around with this message at 10:19 on Aug 8, 2013 |
# ? Aug 8, 2013 10:15 |
|
Zero The Hero posted:-I'm not sure how to fix my indentation. Someone suggested I find another template to copy, I'll probably do that. Looking at the example resumes that were linked in this thread, I don't actually know how to emulate them. I've just been using Google Docs. https://docs.google.com/document/d/1oqRJjLOvdQjEvfIbjfijNMx7zhOYHhc-SZ7EwcaRrl4/edit?usp=sharing Note that I'm in the UK so some things may vary a bit but a lot of the general advice that you'll see applies anywhere. Personally I aim for two pages, some people will tell you that it should be one but I think two is fine. My CV is not the greatest ever but it seems to get pretty good results and it looks a lot better than yours for a few critical reasons. What you need to do is make use of formatting instead of (or, as well as) indenting. See how I have my dates and companies in italic, for example. Use bold, italic and text size in consistent ways to highlight the types of information that you are presenting. Secondly, bullet points are awesome. Include both prose and bullets so that someone can skim the key points and then read the detail. Prose not only provides important detail but it also shows that you are articulate, so a mixture is a good idea. quote:-I'm not sure how to give details for my Verizon Wireless internships. Here's what I have now: Don't bullshit, but be creative. The line on my CV about triage, for example, is true, I created that process. But what that actually entailed was me saying "hey can we have a meeting every week to talk about UK specific bugs?". And then we did. And suddenly they started getting fixed because it turns out if you talk about a thing, stuff happens. quote:Normally, interviewers ask me about this, and I go into detail, which is exactly what I want. I can actually explain the kinds of problems that required fixing and the types of solutions I applied to them. I can definitely agree that it needs more detail, but I just don't know how to give any relevant detail to people who aren't already familiar with the job positions within VZW. What I'm hoping with this description is that employers will get just enough of an idea to see that it's related to engineering through more than just the title and be more compelled to ask me questions; but when I look at it, it doesn't actually look any more descriptive to me.
|
# ? Aug 8, 2013 10:42 |
|
So while I was typing that out, the post above it appeared! This might be a double post but whatever, the one above is huge enough so I'll reply separately. Strong Sauce posted:You've already done the interview but you shouldn't assume that you're not qualified if they want to talk to you. You should let them figure out whether or not you're qualified. When you've had two interviews in your whole life and they were both five plus years ago, it's kind of terrifying doing the first one. Honestly I feel so much better about the whole prospect of interviewing after doing that one. quote:Unfortunately a lot of companies are expecting this exact state of mind when they negotiate with software developers. I want to slap you because every developer that doesn't fight to get more money is devaluing everyone else in the field. Gain some courage and fight for your worth. The reason I feel like this is because I really want to get out of my current role. It's toxic and going nowhere. Long-term I want more money, sure, but right now I just need a foot on the dev ladder. You're right though, I shouldn't downplay my value and the fact that I am super-valuable to my current employer should tell me that I can be a super-valuable employee for someone else as well. quote:Reduce your info at the top into two lines. First line is your address, Second line contains phone and email. quote:All your action verbs for your current job are in the past tense. But your other "jobs" as a Java Workshop Demonstrator and Volunteer Award Leader are all in the present participle. Yet you haven't worked at those positions in 7 years and 3 years respectively.
|
# ? Aug 8, 2013 11:15 |
|
Is it feasible to live on your own with an entry-level position in Silicon Valley? I'd love to move out there, found a few job postings, but I'm afraid with a junior salary it would be tough?
|
# ? Aug 8, 2013 13:04 |
Sab669 posted:Is it feasible to live on your own with an entry-level position in Silicon Valley? I'd love to move out there, found a few job postings, but I'm afraid with a junior salary it would be tough? Don Mega fucked around with this message at 15:03 on Aug 8, 2013 |
|
# ? Aug 8, 2013 15:01 |
|
Rent in SF can run you $1-3k per month, depending on which area you're in and how many roommates you have. Meanwhile you'll be pulling in $5k+ per month after taxes with a junior level job in the Bay area. So no, it wouldn't be tough.
|
# ? Aug 8, 2013 15:16 |
|
So I had an interview today. It went really well and I like the culture, size, etc. I'm just a little concerned with the technology they use. They're using some Java technology (EJB/JBoss/JSP) that others have told me is "outdated" and while it fits the product they make, this was a little disconcerting to hear. This will really be my "first" dev job, so I'm not sure what to make of it. How much is it going to impact my career by starting off working with these things that may soon die? Forgive me if this is a retarded question.
|
# ? Aug 8, 2013 16:55 |
|
|
# ? May 15, 2024 03:35 |
|
Safe and Secure! posted:If I actually had anything to express while doing FizzBuzz, other than my surprise and elation at having encountered the mythical fizzbuzz interview question, I'd feel like I bombed the interview, because I'd be wondering what kind of idiot the interviewer must think I am that I found fizzbuzz to require thought. Just to demonstrate that an interviewer can probably migrate a question into an area you'll have to ask about, did I mention it was in MIPS assembly? I'd find it very odd if someone had syscall syntax for an obsolete processor and unknown OS memorized and didn't have to ask about it.
|
# ? Aug 8, 2013 18:18 |