how to be a freelance website developer


When I was just starting out as a software developer,I don't know what I'm doing。I was very depressed。I don't think this job is interesting,I don't even think I am“got a job”。why i told you this,the reason is:If you have picked up this book to find the answer,You must be familiar with this feeling。

do not worry,This is normal。In fact,It's also natural。

let me be blunt:want to be a software developer,You don't need to be a genius,You don't even have to have an above-average IQ。

When you are new to software development,you either feel overwhelmed,Or it feels like you're strapping something heavy on your ankle and jumping into the abyss,you may have done something wrong,Maybe you're not human at all,maybe both。

anyway,When you enter the software development industry,You should think of the hardships and confusions of this line of work,But you didn't think——i bet。

How did I get in

I remember when I first taught myself to program,didn't have as many resources as it does today。In fact,I don't have any resources。

I downloaded a popularMUDgame[1]'s source code(This is a multi-user version“Dungeon Siege”game,similar to《World of Warcraft》,but no graphics just text)。Yes,that is far away“Dial toBBSsystem”era。

I don't even know what the hell I'm looking at。All I know is,I want to create my ownMUDVersion,Add my own planning features,and most importantly,I'm also going to hide this functionality in a bunch of weird strings。

I messed everything up at first。I modified the value of the variable,I've collected some that are said to be able to deal a fatal blow to the opponent“Cheats”code。I took it and changed it,recompiledMUD,see what happens。Sometimes I can get the results I want,Sometimes it doesn't even compile。With the process of observing what works and what doesn't,I learned。Although I still don't know what I'm doing,But when“fiddle”After a week or so of these codes,I actually created aMUDnew version of the game,This new version actually includes some features that I made myself。

On the long road to becoming a professional and efficient programmer,This is just the beginning,And each of us needs a start。

why i told you this story,It's because doing it directly is better than holding up a textbook、Go to college or attend a coding bootcamp……more important。“A journey of a thousand miles,start with one step”,I believe this is the right way to start programming。You have to do some small tinkering,See how it works,how is it“No way”of。I'm sure this is the best way to learn。(see《Soft skills:A Survival Guide Beyond Code》Of“ten step learning”。)

but,Learn to code and learn“How to start a career in software development”two very different things。You do need to learn how to program,But software development is much more than programming。This chapter is precisely about something outside of programming。

Learn about the profession

(how to be a freelance website developer)bear the brunt,Some things you need to know about developing software。It's easier than you think,also more difficult。

The entire content of this book is devoted to“What you need to know about software development”,But here I'm just giving you a quick look。

(how to be a freelance website developer)Software development is more than just programming。Programming is an important part of it,But if you only know how to program,you won't get very far;especially if you want to stand out in the field。

The idea behind most software development projects is actually to automate a manual process,or in other words,is to create a new automated way to do things that are too difficult to do manually。

look at me,The word processor I'm currently usingGoogle Docswrite this book。if i don'tGoogle Docsor other word processing software to enter the text of this chapter,Then I can only choose to use a typewriter,Or simply write it entirely by hand。If I want to edit the document format and print it,Then I can only type it by hand, character by character,then print。If I want to fix some errors,especially spelling mistakes,Then I have to keep a whole bottle of correction fluid on hand.(may also need a bottle of whiskey)。

now,not onlyGoogle Docs,There is also a range of hardware and software programs that help me automate the process of typing and handwriting the entire book。I think you've figured this out。therefore,Allow me to highlight a core concept to you,A concept you should know early in your career in software development,the sooner the better:before automating a process,You have to know the whole process of doing this manually。

understand the problem

Too many ambitious and experienced software developers trying to write a piece of software don't fully understand what the software is supposed to do。They want to jump right into coding。(existMUDexample of the game,This method might be good。but it is not suitable for creating software products。)Obvious,you are smarter than them,because you are reading this book。

The software development process often begins with a thorough understanding of the problem。that is,What do you need to automate?

Different software development methodologies have different approaches to solving this problem,But this question is not the most important right now。present,The point is,to some extent,you have to gather some requirements,Use this to build an understanding of the problem to be solved,Then start writing code。

The process can be simple,Just talk to potential customers,Discuss what kind of system needs to be built、how it should work,can also be formal,Create a complete requirements specification document。


Only after understanding the problem,you can conceive of the design method,that is,How to solve the problem in code——Notice,This process still happens before the code is written。

You can think of this process as an architectural blueprint for building your code。same,Different software development methodologies implement this process in a variety of ways,but most importantly,before you start coding,you need to do some level of design。

This rule applies to large-scale software development as well as small-scale software development。Some familiarity with agile software development(This we will discuss in later chapters)of developers think they don't need any design,They can start coding right away。Although the focus of agile development is“Light early design”,But design is still essential。

I want to build a house,You can't just pile standard boards together as you like.。

write the code

(how to be a freelance website developer)Once you have some understanding of software design,you should write some test cases to define what the software should do(Test Driven Development,which isTDD),You can also start coding。(We will discuss further in later chaptersTDD。)

Write code itself is a question。therefore,Here we will not discuss in depth,But I will recommend it to you two classic books about writing code.。The first book I recommend isSteve McConnellof《Code Daquan》,This is the classic book that each software developer should read.。The second book I recommend isRobert Martinof《Code neat》,This is another classic masterpiece,It can help you write a better code in how to write more excellent code。These two books will help you learn how to structure your code,And how to write code that is easy to understand and maintain。

These two books have a profound impact on my coding skills.,Especially how to clarify the problem and how to design。

Test and deployment

So,The code is written once,We can release software.,Is it right?

wrong。Next, it should be the process of testing code.。same,The test process implemented by different test methods is not the same,But overall,Implement some form of testing before delivery of software code to end users。for example,In traditional waterfall development project,Test occurred in the final,But in the agile project,After each iteration(Usually lasts for about two weeks)Will have test activities。

The code only after the test,Can deploy,This is a complete process。

One chapter will be about deployment in the subsequent content of this book.,Here we don't discuss details。Generally speaking,The deployment is to install the completed software on the server.、Process that uploaded to an application store or in other ways to access the software to the software。This process may be quite bored。In this process,Possible code(That is almost certain)There will be some small problems,So you need to check the code in the source code base.,This guarantees different versions of code and its changes in each time period can be effectively stored.。

In complex applications for some processing volumes and data,Deployment may also involve activities for some database。Database usually store user data or configuration information,It also needs to be updated with the update of the source code。

(how to be a freelance website developer)Many software development teams use continuous integration,In the developer“Check-in”Automatically generate code when the program。

Not just writing code

finally,Don't forget to debug。A developer,You will use a lot of time to discover you written(Or others write)Why is the reason why the code does not work properly?。

In summary,Software development is far from writing code as simple。

Before finding a real software development work,You need to understand all the above knowledge。At least you have to have some experience and skills,If the level of proficiency is achieved, it is better.。

but,Do not be afraid。The purpose of this book is to do everything for you.,or,At least give you an introduction,Thus, you can guide you on the right direction.。You have to prepare your own bag yourself.,Rotate the vast world of entering software development,But at least,I can tell you what to prepare.。

Work a good job

“OK,John,I already know,Software development is not just writing code,I will spend a lot of time debugging code,But you haven't told me how to start working on software development.。”Yes。I understand your idea,But guess how?Have a good news:You have already started,congratulations!

Pick up a book like this book,And truly try to understand software development is not just writing code,You have had a better start of most software developers.。

I know,Here, I have made a problem that I feel good.。But this is indeed true。One day when you become a old software developer like me,You will also have the same thing to others.。

Now,We have more practical——You need a plan。Yes,A true knife、Practicable、Swordsman,A planning you how to develop a large-scale plan from a small-white growth that does not know anything about software development。

I want to do this.,There are many ways to choose from。I will in the late chapter in the contest and some of them.。but,So-called“Uncomfortable,Gold stone”,With their brains、Which way to choose this,Not as if you choose a way、Insist on。

Combine the plan together

Let us talk about your plan what should be included?。

first,You need to open a public land to assess your current position.,And what you need to learn。Do you have programming experience??Do you understand the programming language??Do you have an application??Still you are completely tailored to a newbie?Other skills mentioned in front of this book,Do you have one or two??Your database、Source code control、TDD、test、Did you know if debugging or all kinds of software development methods??and,Ask yourself:Which type of software development work do you want to do??

Of course,Everyone wants to become a game developer,But is this practical??Is this really what you want to start??Are you willing to take energy on this long and lonely and competitive road??

(how to be a freelance website developer)Too many people will take the way in their lives.,But will not think about it in the beginning of the hair.。Take some time to answer these questions.,So you can work in the road time of the policy of Ma Yang, the plan。

(how to be a freelance website developer)Don't misunderstand me。I will do my best to make this book more benefit.,But in fact, I can help you is limited to this.:I can give you all the information needed to be a good or even great software developer.,But you have to personally make your hands into one organic、Action plan for your own quantity,Then you have to do it, follow this plan.。

Formulate plan

Once you have considered maturity,Then now develop a practical plan for it properly!

The best way to formulate plans is to start——From the goal you want to reach, start step by step.。You have to develop a specific goal——Which software developer do you want to be?,Not like“Learning programming”or“Become a software developer”Such a general statement。

(how to be a freelance website developer)Third book“What do you need to know about software development?”middle,I will show all the features worth considering different kinds of roles and positions on software development.,But you can also do some research to determine which one is best for you.。

The content of the plan must be specifically as possible,This way you will know what you need to learn.,How do you make a resume?,You should sign up for which school or training course,Even who you need to apply for。

I know that these decisions and commitments are very difficult.,But I can't emphasize how important it is.!About this kind of software developer you want to be,What you consider is specific and micro,Everything will be more and more。

You will be able to tell yourself in a straightforward manager, what do you need to learn?,And what you need to do for your career every step。

Who wants to be a athlete

We give an example:Suppose you want to be an athlete。

This is a quite broad problem。What kind of athletes do you should be??Maybe you should practice weightlifting and running,Maybe you should practice swimming,Or maybe you should practice play tennis。Then you can do all these things.,Even more projects,To become a universal athlete to prepare,Experience in any team。What is much ridiculous?!In fact,When a person will wish“I want to be a software developer”Time,It sounds absurd。therefore,“Select your sports project”Very important。

(how to be a freelance website developer)Once you have learned a sport,You know how to train yourself for that campaign,This will make your life easier——Trust me。Start with the goal,End,Take this to determine what you need to know in order to achieve the target.、What do you need to do?。

Once you are making,You can develop your own plan。Your plan should start with something you need to learn.。Make a clear understanding of your needs and how to learn is crucial.。Then,You should do everything you can figure out:In order to get your first work,Positioning for your needs,What are you need to do well?。finally,In order to get this job,You also need to develop a practical plan——Where are you going to see??Which position do you plan to apply??How do you plan to apply??It may also also need to add a plan,List how you continue to personal development and implementation in your progress after getting your first job?。

I don't know what I don't know.?It does not matter。I wrote this book is to let this everything is simple to you.。

In the next chapter,I will help you understand what knowledge you need.,And how to get these knowledge,At the same time in the next few,I will give you a detailed guide on how to find a job.。And now,What do you need to start thinking about your plan?,And try to figure out which developer I want to be。

(how to be a freelance website developer)TowardsJohnAsk questions:But I really don't know which developer I want to be.? 

It does not matter。If you have just met,You may not know what choices you have——Except for game developers。

Fortunately,I want to figure out what is not difficult.,Just do some research。

Some of the following contents in this book(Mainly in the third article“What do you need to know about software development?”middle)I will introduce the type of software developer.,But you may also do some research;Ask some software developers you know,What are they doing?,Or directly, ask them“Which developer are you?”;think for a while,In the field of innovation and research and development,What related technologies and programming languages are interested in yourself?。

Develop this line in software,There are a lot of career development channels and technical expertise,You can choose some of them as their main attack direction.。you can chooseWebApplication direction,You can also choose the direction of mobile applications.,You can also write a code to adjust the temperature of the refrigerator.,Maybe you want to write how to give astronauts into space。

After thinking twice,Start to do some research work。As long as your problem is correct,The answer is not difficult to find。

Specific example

I always feel,Real example is the most useful。therefore,Let us look at a real scene:Someone wants to become a oneWebDeveloper,ChooseNode.jsAs a main technical direction。

Target becomeNode.jsDeveloper。 

plan  Learn 

(how to be a freelance website developer)LearnJavaScriptBasic knowledge。LearnWebPages andWebDevelopment Technology,Such asHTMLandCSS。LearnNode.jsBasic knowledge。Can write some kindNode.jsSimple developmentWebapplication。Learning developers for developmentNode.jsDifferent architecture and technology of applications。For these reasons,List some andNode.jsArchitecture of the architecture used。Learn some andNode.jsDatabase technology used together。Learn the basics of computer science,E.g:algorithm;data structure。Learn the best practices for writing quality codes。LearnNode.jsApplication method of architecture design。

In order to find the preparations required for the first job

Start searching for recruitment in my locationNode.jsDeveloper's advertising,Find the skills that must be required。Listing locally, I am likely to find a list of work。Start participating in the local user group。Started with the localNode.jsDeveloper's friendship。Hire a resume write hand,Ask him to help write a good resume。Programming issues that may encounter during interview。Delivery simulation interview。Build an application works set,Contains applications with several developments,Demonstrate when preparing an interview。

Find a job

All the contacts of my relationship network are good.,Let them know my value、What kind of work I am looking for。Start applying for a primary position,Or internship development position。Apply at least two positions every day。Summary must be made after each interview,Determine which skills I have to grow on?。

(how to be a freelance website developer)Your plan can be short-minded.,After that, as you know, you should learn and master something more and more.,You need to make your plan more and more。

Having a plan is always crucial。You can constantly adjust and change plan,But if you don't even have a plan,You will follow the wavestage,It is more likely to give up because of depression。

This article is taken from the new book《Soft skills2 Software Developer Career Guide》

(how to be a freelance website developer)how to be a freelance website developer

(how to be a freelance website developer)This is a career development guide for software developers.,Software developer in any development stage,Will benefit from this book。If you are software development/Programming beginners or people who are interested in software development,You can learn how to open the professional tour of software development through this book.,How to get the first job;If you are a intermediate software developer,You can find your own knowledge short board through this book.,Learn how to further expand and master new technical skills,How to learn new programming languages,How to improve technology level,How to deep plowing in your own dream programming;If you are a professional software developer in a Warrhery,You can learn how to expand and promote your career through this book.,How to better get along with your colleagues and bosses,How to sell your own ideas,How to do upward management,How to promote salary increase。


website development company american fork


website development company american fork Florida, USA,What is the cost of a dynamic e-commerce website??At the data exitWe are e-commerce website designersThe company provides the best professional web design for small or large companies in

quality management plan for website development


quality management plan for website development Website as a facade in the Internet promotion,Is the display of corporate image,The importance is self-evident。So how to build a high quality website?What issues need to pay attention to during websit

how to choose website development company


how to choose website development company In today's fast-developing economy,Small and medium-sized enterprises have realized the importance of enterprise website to enterprise development。However,The website building market is polarized。Some