As an experienced software engineer, how long have you been idle, without work, and how did you keep yourself motivated to stay in the profession?
I've been a software engineer for nearly 30 years, and I've been laid off three times. In my experience, that happens to nearly everyone at some point, the other people answering this question seem to be quite fortunate on average.The first
Good software engineers enjoy their work in the right environments where "right" is largely about the technical problems they solve personally, having great co-workers who are enjoyable to interact with technically and otherwise, and not too many negative factors which out weigh those positive aspects. A lack of commercial success usually doesn't
You are referring to attending a 24 hour hackathon session or you want to organise it?Anyway, I will try to answer from an attending point of view. First of all, hackathons are not an exam where
I feel like I should be my own boss and I need to start my software engineer firm. I want to do mobile programming and become rich from that. What advice do you have for me?
I'm 23, had 7-8 months experience and decided to start something of my own, a friend joined in and then it began. Sharing my experienceIt takes time. You need at least one year to setup. Remember you are starting from scratch you will
I wanted to be a software developer should I learn coding? And which coding language should I learn first?
Hey there,If you want to be a software developer, you need to, first of all, know the basic coding languages like- C, C++ & Java and then you can build upon your skills as a coder.If you seriously want to be a
That we are "programmers".Programmers write high level programs. They give relatively simple instructions to complex systems that others have built.Software engineers design and implement those systems. They understand them from the hardware gates on up and can understand it when something goes wrong inside and fix it.A "programmer" is someone who
It really depends on the type of interview. Will you being doing application development? Mobile development? Web development?In general, if you know the following, you should be pretty well off (to be honest, having a broad understanding of CS is helpful):Software Engineering / GeneralMVC (Model-View-Controller)What the software lifecycle looks like (something like: [Universe of Discourse] -> Problem
I am going to mention only the very basic ones that you should do while getting started to get a hang of any programming language of your choice (or programming in general):1. Program for Tower of Hanoi solution: Output will be the number
There are a number of things that come to mind :)Software does not trump business management. On this point I am talking about a business that creates custom software for its internal use. An eCommerce company is one example of this kind
Without knowing your desired city, the average salary is not so meaningful. Because it is totally different in different locations. Also, because of different tax systems and living costs, what you actually make could mean differently in different locations.This tool is for comparing the savings of software engineers in two cities. But you can still use
I did not research that deeply but I can give personal examples - I have had 4 Doctors friends in my entire life - while I had tens of Programmers friends... and still have.None of my programmers friends came even close to making as much money as any of
Run. Slowly and for a long time.I'm in a similar position, but now mid 30's. 8-14 hour days looking for missing semicolons and working solutions to problems that everyone else gave up on long ago. I like what I do, but that's 8-14 hours of butt time. Often my fitbit has 1500
You dont need to take my word for anything you can just take the word of the many low back pain medical experts that I quote,10 and the hard evidence that their opinions are based on. At the same time, I am realistic about
Location based salary range as per my knowledge for Web Developers (Specialized in Frontend / Backend) with 3 – 5 years of experience.Gurgaon, IN : Offering around 30–32 LPA - companies - Urbanclap, Rivigo, Tower Research Capital and few more startups.Bangalore, IN: Offering more than 32 LPA - Companies - Flipkart, InMobi, Amazon, Swiggy etc.Berlin :
It has nothing to do with how cheap it might be to learn program. Most people simply do not have the kind of innate personality and traits needed to actually work as a programmer.Do you remember ‘word problems' from grade school math?Questions like:
How to Install Linux on a Chromebook and Unlock Its Full Potential, so there's that.A Chromebook Pixel is huge overkill in some areas and underkill in others in all the wrong places for a programmer. Pros:A really good keyboard and screen, which are musts for a programmerMore than enough processor power and
information Science is the investigation of data – and how individuals utilize it inside associations. information frameworks assume an essential part in pretty much all that we do.It focuses on Information and Communication Technologies (ICT) utilized by individuals to oversee data
I learned quite a few things, but the 'most important' might be quite unexpected as an answer here. If you are really into programming, coding or software engineering, you think it's a form of art, and that you can successfully live by doing just that, think hard again. There
When you work as a professional programmer, you are doing a lot more things than coming up with algorithms. This includes (but is not limited to)1) Talking to people who (although speak English) communicate with language that might be completely alien to you. They have
Yes, they are.And of course, no, they're not.On one hand, yes, there is a lot of BS about the place, OMG! Teh Githubs! or rubbing hands over algorithms or data structures. Some will talk the talk about optimization,
Are software engineers/developers great problem solvers by nature or does learning to develop and code make them great problem solvers?
I believe its really a bit of both. This is what I've observed.The great problem solving software engineers I've known practice. They practice a lot. Most of this practice happens in some sort of disciplined setting. When they were students they worked intensely on programming assignments, class projects
Python allows you to many cool things with its vast resources of libraries. I will list down few cool things you can try out1. Game development :- You can develop a video game using module Pygame.
One of the coolest questions, found in Quora. As I have few years of experience and less frustration as a programmer, I would like to highlight a few points which can frustrate a programmer sometimes.Typo Error: The craziest thing, where a programmer is spending too much effort to find the root cause of a problem, and later he
It depends a bit on how much risk you are willing to accept. You can make 10x the money you could at any trading place if you pick the right startup and it goes public.Otherwise you'll probably earn about the same, particularly once you've dealt with the cost of
This is a quote from the book Peopleware which is a book all about how to manage software developers. The conclusion in the book is that music doesn't hinder executing basic simple programming (left brain)tasks but does hinder creative problem solving(right brain) tasks. The following quote is from one of the
I can second the productivity being the hardest part of the job. From my experience, often times the mix of lack of definition on the project, lack of clarity on the requirements, technical and process unknowns, all mixed with the expectation of autonomy and self-drivenness - all make for a tough context for being consistently productive.A set of good
As a software engineer, what was the strangest feature put by accident that actually made your system work better?
Not sure it was a real improvement but the version of FORTRAN I used to use would silently ignore any character after the 74-th character on a line.This allowed me to place comments about what each line did, provided it was after the 74-th.
I would think that most software developers get this itch at some point. A lot of people mention the potential for money, users, making a difference, etc., and those are real drives for a lot of developers to want to start a company.There's also the engineering side of it. To actually develop software in
It may sounds a bit redundant, but a programmer truly becomes a Software Engineer when they start engineering.To steal from the explanation of
If you are good at software development you can be a software developer. It's not necessary to even have a degree, but a degree related somehow to computers/math/information theory can be a big help.We always need more *good* software developers. The trouble is being a good developer is definitely a vocation (something one is suited to) rather
Yes. I did it for 3 years from 2012–2015 studying Computer Science at UMBC while working various full time jobs (Business Analyst, Report Developer, and eventually Software Engineer) and even doing some web dev part time work to increase my skills during that time. It was hellish, and honestly I
There're at least 8 things that make code great:EfficiencyObviously, clean code is fast code. Code that is clearly written is easier to maintain and tends to be faster because it indicates that the code was correctly developed and refactored to its core purpose.MaintainabilityThe characteristic of truly
Not necissarily.First, even if you focus on coding ability and work efficiency alone - I don't think there is a correlation between the level of introvertness and coding abilities. At least my anecdotal personal experience taught me that there isn't.Second,
Short Answer: Yes.Background:In my experience, people who are poor in social skills, language skills, but are good at math, mechanical comprehension, and visualization self select into math, science, engineering, and computer science.In the engineering and computer science work places I see a lot of people who are in the Aspergers end
As the question asks for a
You'll likely get a lot of Software Developers/Engineers who are passionate about what they do chiming in to tell you that most are happy. Instead, I suggest let's look at some survey results.Where does Software Developer/Engineer appear in PayScale.com's top 25 Mot Satisfying Jobs In America list? Answer: These positions
Does a project manager need to be knowledgeable in the domain of the initiative, (i.e., construction - builder, software development - coder, etc)?
You need to know enough to know when ‘they' are lying. Did that contractor say one thing, a good thing, but do something else, a not-good thing? Can you determine this situation before they have left?The project manager really has to understand how the work should be done,
Smarter.You'll be forced to practice thinking straighter, deeper, and more critically.Programming can teach you:Precision: One typo and the program will halt.Simplicity: Code must be as simple and obvious as possible. But simple is a complex problem.Tooling: You require many many many tools. Hardware, software, SaaS, cloud storage...
Has it become a trend among programmers to diss a programming language or a piece of code to look cool?
Yeah, I think that's always been there. 40 years ago FORTRAN was the
YesI was bored and underperforming. I resigned even though i did not have another offer in hand. It took me a few months to find another job. Around that time, the previous organisation laid off several employees... along with severance package amounting to 3 months of salary. I regretted because
Well, go to college and get a degree that says
FullTime:Many companies have the remote work option available, you will find in the job requirement like
All you want is to develop a new billing software, there are a few things you need to take care ofTake some time to assess your past experiences and identify what went well and what didn't. It will help you define how you want things to happen for this new initiative. Involve the entire team
Tired of being trolled with
Well, in two words : code well .And by well, i mean : keep the code clean, follow the single responsibility principle as much as possible, since that's what makes your codebase understandable and maintainable. IMO it's better to spend 2 hours thinking about the best way of doing something and implementing it in a couple
The only real way to know is to try it and see.That said, there are some clues you can pay attention to in advance.Do you enjoy programming now? Are you curious about how software works, about how to make computers
There are a number of ways to interpret your question. Even then, there are a number of approaches, really too many to explain in a short post.One of the classic definitions of cracking is to break copy protection or license enforcement. One way to do this is to use a debugger and
How do you enjoy eating, sleeping, or enjoy anything that may result in feeling good? If you eat horrible food all the time, you'll hate when you hear the word
There are two ways that actually work, and no one wants to use either one.Learn programming (see Teach Yourself Computer Science and allow 2–3 years to learn it all). Learn the programming languages you'll need to implement that idea. Total time
It is very common for programmers on Internet related projects to use techniques such as Agile, Extreme Programming and Scrum. Do some research using those keywords to learn more.Note that not everyone does this by the book, and teams usually adjust things to suit their circumstances. Often the work is organized into Sprints of two weeks (common)
A couple weeks ago I accidentally blew away the previous 17 hours of changes to our live, production database.This is an always-on application with users around the globe, so the mistake was certain to have destroyed user-entered data.I didn't realize what
Male programmers are finally catching up to where girl-coders have been for several years?Don't spend all your time BBMing at the club - girls see it, girls know you're talking about them, and it makes you look douche (not bro). Double if you have a wingman with you.Have the nice car.
software engineers ←-----------------→ senior managersYou acquire a completely different skill set. Senior managers need to lead people by influencing their emotions and behaviors. Software engineers need to tell computers what to do in precise and mechanical terms. Senior managers need to meet strangers and make them feel comfortable so they can sell them stuff. Software
I run a technical staffing company that is 100% remote. Our network of freelancers consists of over 5,000 developers and designers. All of whom work remotely. So I have experience with creating a company using the remote work business model.I was actually discussing this question of
I'm assuming that you mean "How is a programmer different from a software engineer?" That all depends. There certainly is a fair amount of overlap in many cases. And the judgment is often left to the employer. However, here are some of the salient
There are a lot of good answers here, so I am not going to repeat them. I would, however, like to cite an example that demonstrates that there is no one ideal software process that will fit all teams.The key lesson here is that agile
It depends on what enjoys you. A work of software engineer is very diverse. One enjoys creating complex things where your work is a significant portion of contributions: then, probably, it will take you years, from 5 to 10, while you become enough
How much of Facebook (product)'s PHP codebase has been transformed into Hack (programming language)?
I can't give you official numbers for a variety of reasons, but I'll just point you to this page:Introducing Hack – A Programming Language for HHVMOver the last year, we have migrated nearly our entire PHP codebase to Hack, thanks to both organic adoption and a number
I am a software engineer having 8 years of experience. I lost all my interest in programming. What are the career options available for me?
This is not unusual and there many options depending on what you love doing. Finding what you are passionate about is not always easy and sometimes you just need to keep trying various things until you figure out your passion. There are structured methods (personality tests) available which will help you in finding a job
I am an experienced software engineer and I want to start building up a profile of things on my Github. What are some ideas for personal projects I could do create a portfolio?
If you don't have a
I don't know exactly what you mean by "a more fundamental programmer," but I'll take the opportunity to talk about fundamentals.First, avoid being a programming fundamentalist. You don't need to have an "unwavering attachment to a set of
I want to become a self-taught software developer and make a career out of it. How do I start? Would be glad if I got mentors to guide me.
Don't worry as I'll guide you as to how you can become a software developer. However, since you have selected the self-taught way, let me tell you-it isnt going to be easy.Most of the tech and software companies like Flipkart, Directi, Uber, Mu Sigma, Freshdesk, Credihealth, etc employ candidates as Software developers
Hi,It's great that you are thinking of getting into software engineering. I believe you have made a great career decision. Software Engineering jobs is one the most sought-after jobs in the market. They are highly paid and are continuously in huge demand.I don't know what stage of life you are at but I would
Hello,Based on your question, I can come to below assumptions.You have an idea which you want to develop.You do not know how to build software, you are from non-IT background.You want trustworthy someone who can build it for you.As you are looking for freelancers, you are looking only for his
I want to start a software company in India. How shall I plan and how do I start? I currently work as an IT project manager.
The broad classification of software company has two major categories1. Software consulting - which has an umbrella of offerings. In short, you work on the IT needs of your clients.2. Software product - You find a niche area where there is a need, develop a product and then start marketing
What has been missing the past decade and one-half relates to this. In IT, one might (ought to) get some notion of requirements. Yes. That relates to domains and the ‘real' aspects of computing and its influences on us all.What we saw was cowboy'ish people (a few fems) pushing things
Simple answer: probably.Software engineering nowadays is basically programming and what's around it. Yes, you can be a software tester, or even flirt with some other areas that involve programming, in a long run, you could even become a software analyst or if more experienced, a software
I generally like surfing Quora when I feel sufficiently sluggish to do any of my pending work. As I am a software engineer, my mouse stop scrolling over when I saw question
Whether there's a difference depends on your Company. However if no-one distinguishes roles then we, as a profession, have a serious problem.To me a programmer is a person who primarily creates code and knows software libraries, database and frameworks in some detail. They typically unit and integration test their code and
Short answer is NO. You don't have to be intelligent to be a programmer, even though it helps. Programmers have to keep learning to keep pace with change in technology. So if you are intelligent and can learn fast, adapt, experiment - its a plus. Makes the job easier, keeps the project manager happy
There are pros and cons with both. It also depends on a few things - a) How comfortable you are with coding/software developmentb) How interested are you in your own field of academics.If you are comfortable with
It depends on many Many MANY things. Just off the top of my head, for the general question of employment versus consulting:Do you prefer stability, or change?Do you need the benefits that usually come with a normal employed position, such as
I read that lengthy article. Although it's well written, I totally disagree with its basic premise that software engineers are not engineers simply because we build systems that are not safety critical.That misses the point of what engineering is.Wikipedia has a pretty good definition:Engineers design materials, structures, and
CodeVariable names, method names, class names Check in commentsComments in code where appropriateTest naming when unit testingIf done adequately it should be enough for another developer to pick up the code. Wikis and document generators are useful when you are developing complex/large libraries or back end
"The algorithms developed by computer scientists are not merely of academic interest and they are also intended to be used". what is the meaning of an algorithm which is only of academic interest and why should we come up with such an algorithm?
That quotation from Invitation to Computer Science by Schneider and Gersting is not really true.Many algorithms developed by computer scientists, both academic and industrial, are of huge practical importance: where would signal processing be without FFT? where would databases be without B-trees? ... where would linear programming be without the simplex method?There is continuous competition
Plan on studying management as hard as you studied software engineering. MBA's are nice but they don't necessarily help with the interpersonal, motivational, political and conflict management skills. Learn about psychology, argumentation, critical thinking, teamwork, leadership, strategy and project management. Study your strengths and weaknesses.Technologists are trained to have the right answer and hand
Joining a MNC.Yes, you heard it right. The "Dream" job that you always wanted, One for which you mugged various Chemistry equations, considered HC Verma as bible and some how managed to solve triple integration IS YOUR BIGGEST MISTAKE. To be honest, I am no different i did all the above but
What are other career opportunities after having work experience of 3 years as a software developer?
After a little more experience or a higher education.You can be inPresales team/ Business analysis team/Work in I.T Consulting/ Be into Client Management/Project Management/ Team Lead/Join Operations team/Marketing, Branding or product designing team.If you wish to Quit IT.You can prepare for UPSC or government jobs.Start your own Business / NGO.Aim for IES.Pursue Arts.Join
The simple truth is that most people who are making their living programming have very very sketchy understanding of theory. Nowadays it's common to understand OO on a practical level, but even those who have studied computer science at an undergraduate level and had to study, say, design patterns have mostly forgotten most of it within
Following are the things I did when I was a fresher and I found it in many fresh grads(Most of them target a developer but applicable to all). Learn the problem If there is any problem comes, they don't refer docs,
I will just address three common mistakes that I have observed in many developers including myself. These three mistakes are tightly related.overengineeringscope creeplack of business focussoft-skill issuesAs I grew and matured, I got to know more and more concepts. For instance, I was very advanced in Java and object oriented programming. Many years ago, I joined a project during
In no particular order:Some software engineers wear glasses. Some wear pants.Most known software engineers have or had parents. The majority of them had human parents.By the law of tautologies, all software engineers are actually software engineers.Software engineers, by and large, get paid money in exchange for writing software, in a system referred to as
I have an idea. You have an idea. We all have ideas."Ideas matter. But more than that the execution matters."I am very sure that today 40% of students at engineering colleges and B-schools have ideas. Especially with so much social media talks about 'ideas' given.Ask any successful entrepreneur, he/she will say it was not just
Here are some misconceptions that I've found over the years:Its easy to get 100% test coverage. Reality - its easy to write tests for low-level software but once you move up to layers that depend on half a dozen or more lower layers, the complexity and cost of
I am going to mention only the very basic ones that you should do while getting started to get a hang of any programming language of your choice (or programming in general):1. Program for Tower of Hanoi solution: Output will be the number of moves required to transfer N (this N is the input) from one
I am 35 and last week I left a $500K job at Amazon in pursuit of more freedom. I don't intend to stop working, but I want to work on my terms, on things that intrinsically motivate me. I wrote a blog post here on Quora with more details about this:Why
Organizations investing significant capital in digital systems are receiving lower than anticipated returns. The average employee is overwhelmed with platforms and applications to do their job and as a result, they are not able to realize the potential in productivity
What are the advantages and disadvantages of working in the same software company for a very long time?
Advantages:You know the processes and systems so well that things become extremely easy for you. You know where you cut corners and where you simply mustn't.You know whom to approach for any issue so new hires gravitate to you for anything they are facing.If you are good at what you do, you form relationships
Professional in coding will write the code with out any complexity, redundancy and in time, any task.Programmer and developer is almost similar but a programmer's work is .. he will write the code it may be new or it may be manipulation in the old piece.. or it may be a
The way to become good at anything someone else has created, for you to use, is to understand what their goals and constraints were, and see if you can come up with something better? You probably can't, but then you will understand why they did what they did, and
Millions of engineers from non-IT branches are regretting for not joining an IT company during placement sessions or offcampus. Most of them either end up doing non technical government job or a low paying job in small core companies. Those who joined IT companies are enjoying good salary and they
That you can learn or master a programming language in a week or a month.That knowing programming languages equates to knowledge in programming. Having knowledge of a language a mile wide and an inch deep just means you don't really know anything.That the only
I have often used those three terms almost interchangeably, yes, even computer scientist. After all, most of us have a degree in computer science, so what does that make us? However, recently I find that those three things have come to take on
Maintaining a clear overview and control at all times. Especially in complex situations and under time pressure, it is easy to get lost in detail, and tempting to cut corners in pursuit of a quick fix.Simplicity and transparency: ensuring that ideas dominate technology and not the other
There are a number of things that come to mind :)Software does not trump business management. On this point I am talking about a business that creates custom software for its internal use. An eCommerce company is one example of this kind of company. Software can enhance a business model, it cannot create one.
Over my career, I've seen a few patterns among software engineers that separate the ones who thrive and those who, well, don't...Mistake 1: Focusing on technology instead of users' needs and business goalsA big mistake I've seen is focusing on the technology over the users' needs and the
I believe that one of the most frustrating aspect it's the necessity to learn new technologies to solve the same problems.I mean, that in this field, computer science, software engineer or software programmer, the technology and the knowledge could be more ephemeral and transitory than others areas.So, generally people working with software development waste a
If you want to prove yourself as a great software developer to your boss or co-workers:1.) agree on reasonable schedules and deliver clean, testable code 2.) help others on your team be great programmers too 3.) if you think the schedule, approach, or strategy of your team is sub-optimal, speak up and initiate