Generally, and most often many developer ask following normal questions:
- “What do I do so I can become a full time web developer?”
- Experienced developers often ask what I would recommend to help advance their careers or become an independent
These answers are not easy…it depends on your experience, your available time, and most importantly, your drive. The first 5 are for those of you just getting started and the last 5 are for the life of your career.
- Find Good Resources – Whether it’s a friend, colleague, website forum or some online community, try to find at least one good resource. When I graduated college, most of my skills were web development related technologies. Specially .net 2.0 technology, ASP, VB, Sql Server and all that. My initial interest was on the networking side. Later on I switched to programming and keep continue in that field. The most important advice would tell is to be in contact with your seniors. Your senior have vast amount of experienced behind them, which can really drive you a good path. I was always used to be in contact with my one of senior. And in fact I got inspiration from him only to go for the .net development. I developed a couple ecommerce sites and keep on learning on different web development technologies. Specially I also love the dealing with SQL. So did few of certification also in that.
- Learn the Basics – All most in your every line of code you write, your most common tasks will include declaring variables, assigning values, performing calculations, looping through data, if…then…else, functions, etc. Every language supports these features and they must be mastered. Any “Introduction” book will cover these features in very good detail. If a book has at least a dozen reviews, see what the consensus says. Better yet, a good resource should be able to recommend a good starter book. I also highly recommend buying an introduction book for the language you plan on developing in. You might not know what that is, but you should have a good idea. You want to always be reading in the language you are learning…this may seem obvious, If you want to learn C#, make the investment of buying a good C# book. And don’t worry too much about choosing a language to start with…as I said above, the basics translate to any language…it’s just differences in the syntax.
- Follow the KISS Rule (Keep It Simple Stupid) – May time I come across such issue where developer are involved in doing the changes in others work. When it come to modify some else programming, it become very tedious task to do. First any one need time to understand the logic implemented by others. If you put 1,000 programmers in a room and gave them even a simple coding task, not one person would code it the same. The question is, would everyone be able to read your code…and if you looked at it a few months later, would you be able to quickly read and understand it? There are a million ways to solve any problem; the best approach is to keep it simple. It makes it much easier to maintain and also decreases the chance of someone else breaking it.
- Test Your Learning By Implementing it – Reading and comprehending a subject isn’t that difficult….but can you really apply what you just learned? I have seen many peoples who can read for the hours and hours. But when you ask them what did he learned, he would be unanswered. I have a wonderful thought, that says: “What you see has no meaning when you don’t read it. It has no meaning of what you read until you understand it, and there is no important what you understand until you implement it”
- Plan your Code – Oh.. that’s real main important that I should more focus on, during my job I see many developers, in fact almost everyone are used to start coding straightway when they are given with specific module. Developer do not plan their coding before they begin it. They are generally very excited about development when they get something new to do. But that’s the not proper approach. It always lead to big mistakes. It either make you to long development time or I may lead to wrong development at the end. The very fundamental development life cycle approach MUST be followed. And that is called System Development Life Cycle (SDLC).
- Project planning and feasibility study: Establish a high-level view of the project and determines its goals.
- Systems analysis and requirements definition: Refine goals into defined functions. Analyze end-user needs.
- Systems design: Describe desired features in detail, including screen layouts, business rules, process diagrams and other documentation.
- Implementation: Write the code. Personally, I design the database first,
- Testing: Check for errors, bugs.
- Deployment: The final stage of the initial development where the software is put into production and runs the actual business.
- Maintenance: The rest of the software’s life: changes, correction, additions, moves to a different platforms, etc. This, the least glamorous and perhaps most important step of all, goes on seemingly forever.
- Laziness Will Kill You! – Often, you might seem under a lot of pressure to get something done very quickly…it is very important to never compromise the quality of the software to get something done fast. At least a half dozen cases where a fellow developer did not code for some scenario because “there’s no way anyone would ever do that”. And more times than not, some user somewhere did it…and I’ve seen entire websites crash because of it (and people do get fired). The developer always blames the user for being stupid and doing what should not have been done, when in fact the developer is the real idiot. Don’t be lazy…don’t be a hack…do it right.
- Put First Things First – Stephen Covey’s “7 Habit’s of Highly Effective People”. He says in Habit 3: Put First Things First, “The key is not to prioritize your schedule, but to schedule your priorities. Do the most important things first – because where you are headed is more important than how fast you are going”. He also says of all of the 7 habits, this is the hardest one to master. I completely agree…it is so easy to work on the fun tasks or prioritize what may seem urgent over working on the not-so-fun things than require time and serious thought. But what’s important should always take precedence over what’s considered urgent. In Covey’s book, he also referenced a lifelong study on what the common trait among successful people is. The answer: successful people know to “Put First Things First”. This may be the most important recommendation you’re your continued career.
- Prepare Component for Reusability – You should never need to rewrite the same logic of code ever. Does your application send emails out? If so, you better have one “SendEmail” method that everyone uses. Do you query the database for the current specials to be displayed on every page? You better have that method encapsulated in a database tier and every page better be getting the data through that method (Better yet, you better be caching that data to eliminate the extra database queries!). Whenever I m supposed to start development in any of new project, I first try to find out the common functionality or functions that need to be developed across different web pages. Generally I devide them into different set of segments. Say for e.g. for the task related to validation at the client side, I always has a dedicated .js file which contain all most common validation functions. Same concept I applied to the database programming. We had developed a specialized library that do the all the basic CRUD operation. We have followed the MS Petshop application pattern. In this, we generally have to prepare the object of models and pass it to the data layer. The data layer will do the rest of database related operation.
- Certifications –Does certification puts wings on your resume..?? No, that is not always true. Most people says getting certified is a good idea. But few completely disagree. The main disagreement is that anyone can get certified. They’re just tests and there are “brain dump” websites out there where people post questions and answers right after taking the tests. But generally companies may or may not consider your certifications that you highlighted on your resume. Yes that is true, that it sometime attract to the recruiter or the HR. They may prioritize your changes first in getting hire a developer. But even after they are going to follow the same selection process that they are used to do. They are gonna take your personal technical interview, may take technical exams. So by that way, if you are not upto the mark in your certification, then you are gone. They do not give discount in selection process to certificate holders. But at the end it is certification is eye attraction 🙂
- Continued Education – Each developer know enough to get the job done, work their 8 hours every day and go home to do nothing. Those with drive and ambition to be great continue their education everyday…even at home. Whether it’s reading technical magazines, online articles, blogs, or picking up a good book, anything you do to stay on top of the latest technology will give you a huge advantage. Not only will you continue to work with the latest software, but you will also be much more sought after, have much better job security and be able to bill a much higher rate. My favorite site is The Code Project, C# corner and may different blogs. When searching for a way to do something specific, I often go here first and almost always find it. Whatever approach you take, make a conscious effort to keep learning. By being smarter and better than the rest, And yes keep on developing your knowledge bank database by bookmarking important resources that you come across while surfing over the net. This will really help you out to get the quick solution in what you do.
If you are in need of any Web Development feel free to Inquire us . Dhanashree Inc. Expertise in Asp.net Development, Php Development, Website designing, Open Source customisation. Dhanashree Inc can be our offshore development company / outsourcing web development company, hire dedicated web programmers.
Above information is for knowledge sharing if you have problem / issue / suggestion please intimate us with details for proper and prompt action.