Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
100% found this document useful (1 vote)
122 views

Software Engineer

The document discusses the occupation of software engineer. It describes that software engineers build computer software and applications and support them long-term. They have knowledge of programming languages, software development, and computer operating systems. The document provides a brief history of software engineering as a field beginning in the 1960s in response to difficulties developing large, complex systems. It outlines typical job responsibilities, requirements, skills, and personality traits of software engineers.

Uploaded by

Trim Syla
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
122 views

Software Engineer

The document discusses the occupation of software engineer. It describes that software engineers build computer software and applications and support them long-term. They have knowledge of programming languages, software development, and computer operating systems. The document provides a brief history of software engineering as a field beginning in the 1960s in response to difficulties developing large, complex systems. It outlines typical job responsibilities, requirements, skills, and personality traits of software engineers.

Uploaded by

Trim Syla
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

HIGHER EDUCATION INSTITUTION

Faculty: Computer Science and Engineering


Name of Occupation: Software Engineer

Student: Professor:
Diellza Retkoceri 20.l22019 Alisa Sadiku
Software Engineering

Software engineers build computer software and applications software and supportthem
over the long terms, then everyone in the world can use it directly or indirectly. Software

engineering is about creating, designing, testing, developing operating systems, computer games,

middleware, business applications, network control systems etc. Software engineers have major

knowledge of programming languages, software development, and computer operating systems, and

they apply engineering principles to software creation.Moreover, software engineers are instinctive

problem-solvers, good at working with others and focused on seeing issues through to their

successful result. Firstly software engineering begins as a user-request initiation for a specific

task or an output. It submits its requirement to a service organization, then the system analysis

and includes an understanding of software product limitations. The implementation of how we

design the software starts by writing the program code in a programming language and the

software testing is done while developers code through module testing, program testing, product

testing and also teesting the product at user’s engagement and feedback.

History of Software Engineering

The origin of software engineering begins in 1960s, while was happening a software crisis- the

name given to the difficulties run into developing large, complex systems. Some experts argued

that the software crisis was due to the lack of discipline of programmers.While this crisis was

happening, many projects ran over budget and schedule, some projects caused property damage

too. The NATO organized two conferences to discuss the “software crisis” in 1968 and 1969, in

Garmisch, Germany. As a matter of fact, many believe that these conferences were the official

start of the profession of software engineering. The one who came up with the name of this
ddiscipline was Margaret H. Hamilton. For decades, people were trying to solve the software

crisis, the cost of owning and maintaining software in the 1980s was twice as expensive as

developing the software. During the 1990s, the cost of ownership and maintenance increased by

30% over the 1980s. In 1995, statistics showed that half of surveyed development projects were

operational, but were not considered successful. As it is said, every new technology and practice

from the 1970s through the 1990s was being used as weapons to solve the software crisis. In

1986, Fred Brooks, published an article arguing that no individual technology or practice would

ever make improvement in productivity within 10 years. So, the debate about the weapons to

solve the crisis raged over the following decades, some argued for years that their favorite

technology would be a weapon to solve the crisis, but eventually almost everyone accepted that

no weapon would ever be found to solve it. Yet, there are no weapons for any other profession,

either. The first generation of software for digital computers in 1940s has its commands written

in binary code. As the time passed, hundreds of “high-level” programming languages have been

developed. The world’s first software engineer was David Caminer, he failed to get into

Cambrige University and then he became a management tainee at Lyons, where he had to create

the first business aplications of computing on a system called LEO, since then this is known as

software engineering. Meanwhile, the “father” of software engineering was Watts S. Humphrey.

Ana Lovelce in considered as the first women in the world as a software engineer.

The new software developments trends are: blockchain, progressive web apps, artificial

intelligence, cloud computing, IoT, cybersecurity, outsourcing software development. These

technologies tell us that software engineering is always evolving.


Software Developer is generally responsible for the development, design and implementation of

new or existing software products. Software developer works on building software by writing

code, as well as modifying software to fix errors, adapt it to the environments as well as improve

software performance.

Three typical tasks of a software developer are:

1. Write code to develop software which may be web, mobile or desktop application.

2. Modifying software to fix errors or bugs that users encounter while using the software.

3. Consulting with manger and other team members to evaluate working progress and set new
requirement specifications for the upcoming projects.

Software Engineer Job Responsibilities:

I. To develop information systems by developing, designing and installing software

solutions.

II. To follow the software development lifecycle.

III. To document and demonstrates solutions by developing documentation, layouts, charts,

diagrams.

IV. Preparing and installing solutions by determining and designing system specifications,

standards and programming.

V. Protecting operactions by keeping information confidential.

VI. To provide information by collecting, summarizing and analyzing development and

servide issues.

VII. To develop software solutions by studying information needs, systems flow, data usage.

VIII. To investigate problem areas.

IX. Improving operations by conducting systems analysis and recommending changes in

policies and procedures.


X. Accomplishing engineering and organization mission by completing related results as

needs.

XI. To obtain and license software by obtaining required information from vendors,

recommending purchases and testing, approving products.

XII. Software engineers are responsible for system security and data assurance across the

systems that they're developing.

Requirements:

Most companies require that software engineers have a college education in computer science or

software engineering. For more demanding jobs, a graduate degree, master’s degree or maybe

even a doctoral degree is preferred and the experience as a technical lead throughout the full

software development lifecycle is often required. Proficiency in Java or C++, and object-oriented

design skills is a must.

Certifications preferred for this career:

Oracle Certified Oracle Certified Associate (OCA): Java SE Programmer

Professional (OCP): Java SE Programmer

Oracle Certified Professional (OCP): Java ME Mobile Application Developer

CIW Web Foundations Associate

CIW Web Design Professional

CIW Web & Mobile Design Professional

CIW Web Development Professional


Skills:

 Software Engineers are fluent in computer programming languages such as Java, C++,

Python, Ruby, Lisp, Matlab, SQL etc.

 Software engineers make changes and improvments to exicting software systems and

computer applications.

 They are also known as mobile app developers, the can create applications for

smartphones and tablets.

Personality traits:

Software engineers have a lot of personality traits, but the most important ones are:

 Curiosity

Software engineersshould always seekout new information and they should investigatethe

work they are doing to find something new in the process.

 Grit

As a software engineer, sometimes we won’t be able to solve the most challenging problems

during our first attempts, so that’s why we should have patience to spend days, weeks finding a

solution. Software engineers refuse to give up.

 Communication

Working as a software engineer, we are going to work with a lot of people, so if we want to be a

part of a functional team, we have to communicate.

 Attention to Detail

Software engineers have to have the attention to every detail thing in a project because if they

mistype even one line of a code, it can crash the entire application.
Working environment and Job Characteristics

Software engineers usually work in offices or in computer laboratories, they work in clean and

comfortable surroundings, but they can also work anywhere where they have computers and

access to the Internet, they can also work from home. Travel in software engineering is involved

if they travel to their client’s business. Software engineers work forty-hours week, often they

work long hours to meet deadlines. They work both independently and also as a part of a team.

Some of Software engineer’s jobs and salary:

The average software engineer salary in U.S is $102.000

The hourly wage for software engineers is around $30 to $150 per hour.

Software QA Engineer: $95,000

Software Systems Engineer: $96,000

Software Applications Engineer: $101,000

Java Software Engineer: $101,000

PHP Software Engineer: $103,000

Web UI Software Developer: 104,000

Firmware Engineer: $108,000

C++ Software Developer: $114,000

Python Software Engineer: $114,000

Senior Java Engineer: $117,000

Senior Software Engineer: $118,000


The best countries to work as a software engineer are:

 Switzerland.

 Canada.

 Australia.

 Netherlands.

 Germany.

 USA.

 Sweden.

Positive and negative aspects in software engineering:

There are a number of arguments in favour of being a software engineer.

 One of the main advantages of software engineering is that your abilities are always

highly in demand nearly anywhere in the world.

 You can choose your own work place, you can work from home or wherever is

comfortable for you and live more modestly.

 One of the most important benefit of software engineering is that 99% of time you will

find a job and the the pay is pretty great.

Serious drawbacks of software engineering are:

 Unhealthy lifestyle, you will be sitting all day and eating fast foods most of the time.

 Working as a software engineer can get really stressful, you are going to have a lot of

responsibilities and a lot of work that is going to be challenging.


 Software engineer’s education is never over. There are going to be always new things

that you should learn even if you are perfect in your job.

Further Advancments

Presently, I am a student in computer science and engineering at UBT-Prishtinë, where I am

studying general things about computers. As for software engineering I am looking for online

courses, but at the moment I am not involved in any activities or courses that can help me build

skills needed to become a software engineer.I’ve been thinking for master studies too. My dream

was always to study abroad, especially in United States of America. So,I have been doing some

research for master studies, I have a found a really good university to go, it is located in

Rochester, New York and it is called Rochester Institute of Technology.It will take 2 years to

complete master studies, and I should have a bachelor degree from an accredited institution and

have a cumulative grade point average of 3.0 or higher. In Rochester Institute of Technology I

can not get a full scholarship, and the fee for this university is $45,808 per year.

Career Path

Almost every industry related to technology employ people who are software engineers.

Working as a software engineer you can work anywhere in the whole world. Some of my local

firms where we can find software engineers are : ABC Software Development Kosovo, Frotcom

Kosova, Proper ICT appdec, Cacttus, Kutia Software Company, while some famous industries

where software engineers work are: Intellectsoft, Goji Labs, DCSL software, Brainvire Infotech
Inc, DockYard, DePalma Studios, Xfive., Syberry. From time to time, the number of software

engineers is increasing, in the end of 2019 the number of software engineers has reached. As for

job safety, being a good software engineer, a hard worker and really good at communicating

(because you are going to work as a team often), it is not going to be easy for someone to fire

you. For my opinion, education does make differences in salary, not only in salary but also to be

good in your job too.

Some of the hazards I researched in software engineering are:

o Estimation and scheduling

o Sudden growth in requirements

o Employee turnover

o Breakdown of specification

o Productivity issues

o Compromising on designs

o Gold plating

o Proceduralrisks.

Conclusion:
To sum up, I think I will find myself in this career, I love being challenged, I am a hard worker

and I love creating, designing, testing etc. computer software and application software. To

achieve this goal I need to study both harder and smarter and get good grades then I am sure I

will become a good software engineer soon. I have been thinking to apply somewhere to do

practice in this field, but I really need to keep my grades up so, I guess I am going to have to

postpone this for the second or maybe even the third year. I feel the information I gained doing

the Career Research Project was very helpful as I thing about my future plans. I am so glad I am
already decided what I am going to be in the future and I am starting earlier to study about

software engineering. I think every part of the project helped me a little to be more interested in

this, every part has its own importance that will help me to be successful in software engineering

in the future.

THE INTERVIEW

As I was doing this project I met a friend of a friend who turned out to be a software engineer

here in Kosovo. We had a really long talk about this career and I learned a lot from him.

According to him, Software Engineering is rapidly changing and these changes are in terms of

technology which is changing everyday like user expectations and needs, the market growth and

also the eager to bring innovation products for better profit. He really loved his job because ever

since he was young he always wanted to know how technology works, he was passionated about

exploring and trying to develop something interesting that could be useful for people needs, and I

just think he explained everything I wanted in his words. He is not that old in his job, he told me

that after he completed his degree, he started internship in August 2015 and then he switched to

full time job in January 2016, so he has been working as a software engineer for the past 4 years.

His typical working day would be: waking up, taking a shower, having a cup of coffee, getting

ready for work and once he goes in his office, he opens his laptop and he checks the list of tasks

that need to be completed. He and his team have meetings every Monday where they discuss all

the tasks that they are going to be completed within a week. During the day, he spends one hour

a day doing research and the rest mostly writing codes. He gets two breaks during his work time,

one to eat lunch and another to have a coffee or tea. As he said, he always makes time to hang
out with friends, and spend time with his family at home. The most exciting thing about software

engineering is that he gets to develop websites and mobile applications that we use in daily life.

Software engineering require hard work and they need to stay updated always with the lastest

technologies in market which is tiring. While doing this work, he told me that I should have

patience because some problmes or bugs may take hours to solve thich is time consuming, but

we should not give up. This career is expanding since world is moving towards digitalisation in

future is expected to have many more jobs in IT field, especially in artificial intelligence, big

data and machine learning. The company he work in hire people who are passionate about

programming and who is willing to learn new skills, in the meantime, it is important to be good

and have knowledge for the job. From his prespective, the best programmers are usually young

people who take risks by trying to develop something on their own, and everyone knows that

there are so many programming languages which obviously a person can not learn all of them,

but people who are willing to become programmers need to learn the logic of programming and

they are going to be successful in the future and they will learn any programming language

needed.

You might also like