Most employers prefer applicants who have at least a bachelor’s degree and experience with a variety of computer systems and technologies. In order to remain competitive, computer software engineers must continually strive to acquire the latest technical skills. Advancement opportunities are good for those with relevant experience.
Education and training. Most employers prefer applicants who have at least a bachelor’s degree and broad knowledge of, and experience with, a variety of computer systems and technologies. The usual college major for applications software engineers is computer science or software engineering. Systems software engineers often study computer science or computer information systems. Graduate degrees are preferred for some of the more complex jobs. In 2006, about 80 percent of workers had a bachelor’s degree or higher.
Academic programs in software engineering may offer the program as a degree option or in conjunction with computer science degrees. Because of increasing emphasis on computer security, software engineers with advanced degrees in areas such as mathematics and systems design will be sought after by software developers, government agencies, and consulting firms.
Students seeking software engineering jobs enhance their employment opportunities by participating in internships or co-ops. These experiences provide students with broad knowledge and experience, making them more attractive to employers. Inexperienced college graduates may be hired by large computer and consulting firms that train new employees in intensive, company-based programs.
Certification and other qualifications. Systems software vendors offer certification and training programs, but most training authorities say that program certification alone is not sufficient for the majority of software engineering jobs.
People interested in jobs as computer software engineers must have strong problem-solving and analytical skills. They also must be able to communicate effectively with team members, other staff, and the customers they meet. Because they often deal with a number of tasks simultaneously, they must be able to concentrate and pay close attention to detail.
As technology advances, employers will need workers with the latest skills. Computer software engineers must continually strive to acquire new skills if they wish to remain in this dynamic field. To help keep up with changing technology, workers may take continuing education and professional development seminars offered by employers, software vendors, colleges and universities, private training institutions, and professional computing societies. Computer software engineers also need skills related to the industry in which they work. Engineers working for a bank, for example, should have some expertise in finance so that they understand banks’ computer needs.
Advancement. As with most occupations, advancement opportunities for computer software engineers increase with experience. Entry-level computer software engineers are likely to test designs. As they become more experienced, engineers may begin helping to design and develop software. Eventually, they may advance to become a project manager, manager of information systems, or chief information officer, especially if they have business skills and training. Some computer software engineers with several years of experience or expertise find lucrative opportunities working as systems designers or independent consultants.
Sunday, June 29, 2008
Software Engineers: Nature of the Work
Computer software engineers apply the principles of computer science and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work. The tasks performed by these workers evolve quickly, reflecting new areas of specialization or changes in technology, as well as the preferences and practices of employers. (A separate section on computer hardware engineers appears in the engineers section of the Handbook.)
Software engineers can be involved in the design and development of many types of software, including computer games, word processing and business applications, operating systems and network distribution, and compilers, which convert programs to machine language for execution on a computer.
Computer software engineers begin by analyzing users’ needs, and then design, test, and develop software to meet those needs. During this process they create the detailed sets of instructions, called algorithms, that tell the computer what to do. They also may be responsible for converting these instructions into a computer language, a process called programming or coding, but this usually is the responsibility of computer programmers. (A separate section on computer programmers appears elsewhere in the Handbook.) Computer software engineers must be experts in operating systems and middleware to ensure that the underlying systems will work properly.
Computer applications software engineers analyze users’ needs and design, construct, and maintain general computer applications software or specialized utility programs. These workers use different programming languages, depending on the purpose of the program. The programming languages most often used are C, C++, and Java, with Fortran and COBOL used less commonly. Some software engineers develop both packaged systems and systems software or create customized applications.
Computer systems software engineers coordinate the construction, maintenance, and expansion of an organization’s computer systems. Working with the organization, they coordinate each department’s computer needs—ordering, inventory, billing, and payroll recordkeeping, for example—and make suggestions about its technical direction. They also might set up the organization’s intranets—networks that link computers within the organization and ease communication among various departments.
Systems software engineers also work for companies that configure, implement, and install the computer systems of other organizations. These workers may be members of the marketing or sales staff, serving as the primary technical resource for sales workers. They also may help with sales and provide customers with technical support. Since the selling of complex computer systems often requires substantial customization to meet the needs of the purchaser, software engineers help to identify and explain needed changes. In addition, systems software engineers are responsible for ensuring security across the systems they are configuring.
Computer software engineers often work as part of a team that designs new hardware, software, and systems. A core team may comprise engineering, marketing, manufacturing, and design people, who work together to release a product.
Work environment. Computer software engineers normally work in clean, comfortable offices or in laboratories in which computer equipment is located. Software engineers who work for software vendors and consulting firms frequently travel overnight to meet with customers. Telecommuting is also becoming more common, allowing workers to do their jobs from remote locations.
Most software engineers work at least 40 hours a week, but about 17 percent work more than 50 hours a week. Software engineers also may have to work evenings or weekends to meet deadlines or solve unexpected technical problems.
Like other workers who spend long hours typing at a computer, software engineers are susceptible to eyestrain, back discomfort, and hand and wrist problems such as carpal tunnel syndrome.
Software engineers can be involved in the design and development of many types of software, including computer games, word processing and business applications, operating systems and network distribution, and compilers, which convert programs to machine language for execution on a computer.
Computer software engineers begin by analyzing users’ needs, and then design, test, and develop software to meet those needs. During this process they create the detailed sets of instructions, called algorithms, that tell the computer what to do. They also may be responsible for converting these instructions into a computer language, a process called programming or coding, but this usually is the responsibility of computer programmers. (A separate section on computer programmers appears elsewhere in the Handbook.) Computer software engineers must be experts in operating systems and middleware to ensure that the underlying systems will work properly.
Computer applications software engineers analyze users’ needs and design, construct, and maintain general computer applications software or specialized utility programs. These workers use different programming languages, depending on the purpose of the program. The programming languages most often used are C, C++, and Java, with Fortran and COBOL used less commonly. Some software engineers develop both packaged systems and systems software or create customized applications.
Computer systems software engineers coordinate the construction, maintenance, and expansion of an organization’s computer systems. Working with the organization, they coordinate each department’s computer needs—ordering, inventory, billing, and payroll recordkeeping, for example—and make suggestions about its technical direction. They also might set up the organization’s intranets—networks that link computers within the organization and ease communication among various departments.
Systems software engineers also work for companies that configure, implement, and install the computer systems of other organizations. These workers may be members of the marketing or sales staff, serving as the primary technical resource for sales workers. They also may help with sales and provide customers with technical support. Since the selling of complex computer systems often requires substantial customization to meet the needs of the purchaser, software engineers help to identify and explain needed changes. In addition, systems software engineers are responsible for ensuring security across the systems they are configuring.
Computer software engineers often work as part of a team that designs new hardware, software, and systems. A core team may comprise engineering, marketing, manufacturing, and design people, who work together to release a product.
Work environment. Computer software engineers normally work in clean, comfortable offices or in laboratories in which computer equipment is located. Software engineers who work for software vendors and consulting firms frequently travel overnight to meet with customers. Telecommuting is also becoming more common, allowing workers to do their jobs from remote locations.
Most software engineers work at least 40 hours a week, but about 17 percent work more than 50 hours a week. Software engineers also may have to work evenings or weekends to meet deadlines or solve unexpected technical problems.
Like other workers who spend long hours typing at a computer, software engineers are susceptible to eyestrain, back discomfort, and hand and wrist problems such as carpal tunnel syndrome.
Sunday, June 22, 2008
Mobphishing
Mobile phishing, aka "mobphishing," doesn't involve e-mail and bogus Web pages as standard phishing attacks do; instead, mobphishing refers to fraudulent Wi-Fi access points coming from a smart mobile device as opposed to a laptop. In a presentation at the 2007 RSA Conference, Carl Banzhof, VP and chief technology evangelist at McAfee, said that he noticed newer mobile devices were including 802.11 support and wondered if one could hijack a user's hot spot connection (a so-called evil twin attack) using his own code. Banzhof purchased a T-Mobile MDA and, after a bit of trying, succeeded. The advantages of this new attack include being stealth (no one would suspect a smart phone would be capable of this), the ability to be mobile (he could carry it in his pocket, anywhere), the ability to get close to his victims (sitting literally next to them), and the ability to get into places that ordinarily would not allow laptops.
In an evil twin attack, the criminal overpowers a victim's connection to a public hot spot, convincing laptop users to connect to their much stronger device and thereby acting as a man-in-the-middle conduit to the Internet. Once someone is connected to the evil-twin access point, a criminal could then sniff data packets passing through their machine on the way to the Internet or simply steal login credentials and other personal data. Banzhof said in the future the mobile-access-point attacker might also be able to export his or her collection of stolen personal data via a legitimate access point connection or via EDGE technology. He also hinted that it might be even easier to accomplish this attack with Apple's new iPhone, which will be running a BSD Unix-based Mac operating system. There are many BSD tools that would be easy to port over. While Apple insists its phone will be a closed system (meaning one can't add software), Banzhof doubted that the iPhone operating system would really be closed.
In an evil twin attack, the criminal overpowers a victim's connection to a public hot spot, convincing laptop users to connect to their much stronger device and thereby acting as a man-in-the-middle conduit to the Internet. Once someone is connected to the evil-twin access point, a criminal could then sniff data packets passing through their machine on the way to the Internet or simply steal login credentials and other personal data. Banzhof said in the future the mobile-access-point attacker might also be able to export his or her collection of stolen personal data via a legitimate access point connection or via EDGE technology. He also hinted that it might be even easier to accomplish this attack with Apple's new iPhone, which will be running a BSD Unix-based Mac operating system. There are many BSD tools that would be easy to port over. While Apple insists its phone will be a closed system (meaning one can't add software), Banzhof doubted that the iPhone operating system would really be closed.
Wednesday, May 14, 2008
Education Online for Computer Software
"Learn New Skills & Increase Your Earning Power-- With FREE Computer Training"
Are you looking for education, training and tutorials in computer software and office applications such as:
Microsoft Word
Microsoft Excel
Microsoft PowerPoint
Microsoft Access
Microsoft Outlook
Microsoft Publisher
Microsoft FrontPage
Adobe Flash
Adobe Photoshop
Adobe Dreamweaver
Web Development
We offer you both Free and subscription-based educational training and tutorials, on the menus at left, for the most popular computer software applications and productivity tools. We research the Internet for the best free training and tutorial content and make it available to you right here. Access our free training and tutorial materials right now, no registration is required. Then check out all you receive in our member section: the best free computer training and tutorials on the web today for Microsoft Word, Excel, PowerPoint, Access, Outlook, Project, Publisher, FrontPage, Flash, Dreamweaver, Photoshop, Web Development, and more. Many of these sites are difficult for the average Internet user to find via standard searches. We have refined our searching algorithms over several years to locate this training. Then we provide it to you in an easy to access format giving you the best computer education and software learning content available on the Internet today."
New! Visit our online Blogs and get all the Newest Free Training and Tutorial sites as we discover them!
These blogs are written by Scott Turton, EducationOnlineForComputer.com's Editor. Keep pace with all of the new free Office, Software, and Web Development training, education, and tutorial web resources and sites that he is discovering on a daily basis.
Free Microsoft Office Training and Tutorial Resources blog
Free Training for Photoshop, Flash, Dreamweaver, FrontPage, and other Adobe & Macromedia Apps blog
Free Web Design, Development and Programming Training and Tutorial Resources blog
"Find all the Web's Hidden and Valuable FREE Computer Software Training"
Member training content is individually linked and presented in a way to expedite and facilitate your IT learning experience. We have done all the web research and presentation work for you so you can concentrate solely on your computer training.
Please join now, because the price is the lowest possible to make it affordable for everyone - just $14 total for 2 months. The funds generated will help us make EducationOnlineForComputers.com even better in the coming months.
We provide Free and subscription-based online education and training tutorials for Microsoft Office and other desktop applications for end users and developers. Education and training content to learn how to use Microsoft Word, Excel, PowerPoint, Access, Outlook, Publisher, and FrontPage. Also education and training tutorials for Flash, Photoshop, Dreamweaver, Quicken, Quickbooks and Lotus Notes. EducationOnlineForComputers.com teaches you via self-based educational and training tutorials all the Microsoft Office applications and other desktop software for end-users and developers. We conduct a specialized deep search of the web to find the best online training available to present to you in a consistent and coherent format.
If you are looking for technical and developer training and tutorials, please visit our sister site, Intelligentedu.com
Are you looking for education, training and tutorials in computer software and office applications such as:
Microsoft Word
Microsoft Excel
Microsoft PowerPoint
Microsoft Access
Microsoft Outlook
Microsoft Publisher
Microsoft FrontPage
Adobe Flash
Adobe Photoshop
Adobe Dreamweaver
Web Development
We offer you both Free and subscription-based educational training and tutorials, on the menus at left, for the most popular computer software applications and productivity tools. We research the Internet for the best free training and tutorial content and make it available to you right here. Access our free training and tutorial materials right now, no registration is required. Then check out all you receive in our member section: the best free computer training and tutorials on the web today for Microsoft Word, Excel, PowerPoint, Access, Outlook, Project, Publisher, FrontPage, Flash, Dreamweaver, Photoshop, Web Development, and more. Many of these sites are difficult for the average Internet user to find via standard searches. We have refined our searching algorithms over several years to locate this training. Then we provide it to you in an easy to access format giving you the best computer education and software learning content available on the Internet today."
New! Visit our online Blogs and get all the Newest Free Training and Tutorial sites as we discover them!
These blogs are written by Scott Turton, EducationOnlineForComputer.com's Editor. Keep pace with all of the new free Office, Software, and Web Development training, education, and tutorial web resources and sites that he is discovering on a daily basis.
Free Microsoft Office Training and Tutorial Resources blog
Free Training for Photoshop, Flash, Dreamweaver, FrontPage, and other Adobe & Macromedia Apps blog
Free Web Design, Development and Programming Training and Tutorial Resources blog
"Find all the Web's Hidden and Valuable FREE Computer Software Training"
Member training content is individually linked and presented in a way to expedite and facilitate your IT learning experience. We have done all the web research and presentation work for you so you can concentrate solely on your computer training.
Please join now, because the price is the lowest possible to make it affordable for everyone - just $14 total for 2 months. The funds generated will help us make EducationOnlineForComputers.com even better in the coming months.
We provide Free and subscription-based online education and training tutorials for Microsoft Office and other desktop applications for end users and developers. Education and training content to learn how to use Microsoft Word, Excel, PowerPoint, Access, Outlook, Publisher, and FrontPage. Also education and training tutorials for Flash, Photoshop, Dreamweaver, Quicken, Quickbooks and Lotus Notes. EducationOnlineForComputers.com teaches you via self-based educational and training tutorials all the Microsoft Office applications and other desktop software for end-users and developers. We conduct a specialized deep search of the web to find the best online training available to present to you in a consistent and coherent format.
If you are looking for technical and developer training and tutorials, please visit our sister site, Intelligentedu.com
History of Malicious Programs
Malicious software may seem like a relatively new concept. The epidemics of the past few years have introduced the majority of computer users to viruses, worms and Trojans - usually because their computers were attacked. The media has also played a role, reporting more and more frequently on the latest cyber threats and virus writer arrests.
However, malicious software is not really new. Although the first computers were not attacked by viruses, this does not mean they were not potentially vulnerable. It was simply that when information technology was in its infancy, not enough people understood computer systems to exploit them.
But once computers became slightly more common, the problems started. Viruses started appearing on dedicated networks such as the ARPANET in the 1970s. The boom in personal computers, initiated by Apple in the early 1980s, led to a corresponding boom in viruses. As more and more people gained hands-on access to computers, they were able to learn how the machines worked. And some individuals inevitably used their knowledge with malicious intent.
As technology has evolved, so have viruses. In the space of a couple of decades, we have seen computers change almost beyond recognition. The extremely limited machines which booted from a floppy disk are now powerful systems that can send huge volumes of data almost instantaneously, route email to hundreds or thousands of addresses, and entertain individuals with movies, music and interactive Web sites. And virus writers have kept pace with these changes.
While the viruses of the 1980s targeted a variety of operating systems and networks, most viruses today are written to exploit vulnerabilities in the most commonly used software: Microsoft Windows. The increasing number of vulnerable users is now being actively exploited by virus writers. The first malicious programs may have shocked users, by causing computers to behave in unexpected ways. However, the viruses which started appearing in the 1990s present much more of a threat: they are often used to steal confidential information such as bank account details and passwords.
So malicious software has turned into big business. An understanding of contemporary threats is vital for safe computing. This section gives an overview of the evolution of malware: it offers a glimpse of some historical curiosities, and provides a framework to help understand the origins of today's cyber-threats.
However, malicious software is not really new. Although the first computers were not attacked by viruses, this does not mean they were not potentially vulnerable. It was simply that when information technology was in its infancy, not enough people understood computer systems to exploit them.
But once computers became slightly more common, the problems started. Viruses started appearing on dedicated networks such as the ARPANET in the 1970s. The boom in personal computers, initiated by Apple in the early 1980s, led to a corresponding boom in viruses. As more and more people gained hands-on access to computers, they were able to learn how the machines worked. And some individuals inevitably used their knowledge with malicious intent.
As technology has evolved, so have viruses. In the space of a couple of decades, we have seen computers change almost beyond recognition. The extremely limited machines which booted from a floppy disk are now powerful systems that can send huge volumes of data almost instantaneously, route email to hundreds or thousands of addresses, and entertain individuals with movies, music and interactive Web sites. And virus writers have kept pace with these changes.
While the viruses of the 1980s targeted a variety of operating systems and networks, most viruses today are written to exploit vulnerabilities in the most commonly used software: Microsoft Windows. The increasing number of vulnerable users is now being actively exploited by virus writers. The first malicious programs may have shocked users, by causing computers to behave in unexpected ways. However, the viruses which started appearing in the 1990s present much more of a threat: they are often used to steal confidential information such as bank account details and passwords.
So malicious software has turned into big business. An understanding of contemporary threats is vital for safe computing. This section gives an overview of the evolution of malware: it offers a glimpse of some historical curiosities, and provides a framework to help understand the origins of today's cyber-threats.
Subscribe to:
Comments (Atom)