Job Recruitment Website - Immigration policy - How much can ibm mainframe technicians get when they first enter the business?

How much can ibm mainframe technicians get when they first enter the business?

First of all, about the direction of enterprise computing

Enterprise computing is a fashionable and pleasant term, which mainly refers to enterprise information systems, such as ERP software (enterprise resource planning), CRM software (customer relationship management), SCM software (supply chain management, namely logistics software), bank securities software, financial software, e-commerce/government affairs (including various websites), data warehouse, data mining, business intelligence and other enterprise information management systems.

Obviously, the demand for talents in the field of enterprise computing is always the greatest, because this is the field where computers are used the most. The advantages of this are:

(1) There is a great demand for talents, and companies engaged in enterprise computing account for the majority of IT enterprises. Unless you have no specialty, you can always find a job in this field.

(2) The entry threshold of this field is relatively low (if your software skills are not very deep, you can consider this field)

(3) There are many big companies in this field, and they want to make big money, so they spend more energy on enterprise computing business. For example, Citibank, Hewlett-Packard, IBM, SAP, NEC and other companies. At present, all the students who are internship with the students of the Software College of regular universities are companies in this field. If you want to find a relatively stable job in a big company in the future, you will have much greater opportunities to engage in this field.

But the shortcomings in this field are also obvious:

Because the entry threshold in this field is relatively low, although the demand for talents in this field is the largest, there will be more competitors in the future. You will find that even if he is not an IT major, he may still do a decent job after a few months of assault. Especially when you are old, you may find that the young people behind you may easily catch up with your level. If you are going to work abroad, you may find that there are more people engaged in this field, and they are like clouds. Of course, if you have many years of enterprise experience in this field (such as designing software architecture) and reach a higher level, your value will always be high. The main problem in the field of talents in China is that there are too few experienced experts and too many people with a little knowledge.

Engaged in the field of enterprise computing, the most important technical courses are (1)J2EE architecture and programming (2) large database systems (such as Oracle)(3) UML-based system analysis and design. If you have any important skills, you can also include XML and Web service technology. If you master these fields well, you won't worry about finding a job. Among them, J2EE is the most important. At present, J2EE has become the most important platform for enterprise computing software development, and it is also one of the most important courses in software colleges of ordinary universities. Although this course can only be used as an elective course, we hope that students of software colleges in regular colleges, no matter what direction they want to pursue in the future, should take J2EE courses to prepare at least one key skill for finding a job in the future. Including students who want to engage in embedded or other fields, it is also necessary to learn J2EE. After all, J2EE is one of the most important platforms at present. Even if you don't want to engage in enterprise computing in the future, it is necessary to know about J2EE, just like a common sense course. Other skills closely related to enterprise computing include: point network architecture and programming, software testing technology, and software configuration management. Advanced skills in this field include data warehouse technology, component and middleware technology and design patterns. Such as communication protocol analysis and network programming, Unix system management, etc. It also belongs to some related courses. There are not many enterprise computing courses offered in Grade 02 this semester, mainly the most critical technical courses in the field of enterprise computing, such as J2EE, Oracle/MSSQL, UML, etc. , have been completed (but I don't know how many students have studied in depth and will use these skills when looking for a job in the future). We will offer courses in this field next semester, such as XML and Web service technology, software configuration management and so on. There are not many courses in the field of enterprise computing this semester, but you should learn J2EE, DB, UML and other technologies in your spare time, and you must have a deep grasp in a certain field. Just a follower, even if there are more courses, it is useless. Learning by yourself is the most important thing. Only one J2EE is profound enough for you to savor. If you dig deeper, you will find that you still have a lot of related knowledge to learn (including EJB, XML, Web services, design patterns, etc. ).

Although there are many talents engaged in enterprise computing, the following enterprise computing fields are scarce at home and abroad:

(1) Master large-scale ERP systems, mainly SAP systems, including the realization of SAP foundation (system management) or SAP ABAP (programming) or SAP functional modules (especially the realization of financial module FI). SAP consultants are the most expensive and difficult to find. Other large-scale ERP systems, people who master PeopleSoft, Oracle Finacial, J.D.Edward, Siebel and other large-scale ERP software systems are also very valuable. The reason why people in this field are particularly expensive is mainly because these softwares are very professional and very large, so it is difficult to learn D version. Only very large enterprises (such as Fortune 500 enterprises, more than 90% of which use SAP) can afford it, and they must have practical work experience to master it. If it is a software that everyone can easily access, then people in this field are usually not scarce. If you have the opportunity to learn these large-scale ERP software systems in the future, I suggest you seize them without hesitation, which will bring golden rice bowls to the next generation. In foreign countries, people who know SAP are especially valuable. It is always an irrefutable truth that things are rare. The value of SAP is not only that it is an ERP software, but also that it embodies modern enterprise management concepts (such as automatically arranging raw material procurement and production planning according to ordering demand, etc.). ). Generally, the top 500 enterprises will never use J2EE to design their ERP system from scratch, as many domestic enterprises do (what kind of human resources will be invested immediately, and how can the designed system be perfect? ), you will definitely use mature ERP software like SAP. Companies that can't afford SAP can use J2EE to design ERP systems.

(2) People who master IBM mainframe technology, such as S/390 mainframe, MVS operating system, JCL job control language, COBOL programming language, DB2 relational database or IMS hierarchical database, CISC middleware transaction control system and other IBM mainframe-specific technologies. The back-office systems of the five major domestic banks and most foreign banks use the above platform. IBM mainframes are always on, and the platform is relatively closed (which is the safest), so these key applications (called mission-critical applications) that need to run continuously in a 24*7 environment all adopt IBM mainframes. The reason why talents in this field are scarce is because the people who know the host are the elderly (people who engaged in IT before the 1990s). IT is impossible for IT graduates all over the world to learn IBM mainframe (this is a relatively "old" technology), and there are no newcomers to make up for it. The banking system must be maintained, and banks must constantly develop new businesses (such as new types of deposits). Although the absolute demand for IBM mainframe talents is not great, it is relatively constant. Where can banks find new people in this field? It's hard to find them. If they are easy to find, Citi Software will not spend so much money to train our interns (it is said that the company spent hundreds of thousands of yuan on training last year). If you want to look for a job abroad, knowing IBM mainframe may be one of the best areas to find a job, and make sure to find a good job like a big bank. Students who have taught computer majors in Grade 90-94 before, who are engaged in mainframe development after graduation, are now working in some very good foreign companies (several students are jumping around in companies all over the world, keeping their feet on the ground). In fact, I think our happiest classmate is the one who works as IBM mainframe banking software in Citi Software, and the opportunity is rare. A student from Class 2+2, Grade 00, School of Software, a regular university, gave up graduate school and decided to host Citi Software, working very hard. He hasn't graduated. The company sent her abroad to participate in the development of a project and she became the backbone of the project. I think her original choice was completely correct (a female classmate in grade 0 1 just voluntarily gave up the opportunity to be a host in Citi, and we wish her a good future. In fact, there are not many enlightened companies that actively arrange and encourage employees to study in-service graduate students. On-the-job graduate students are also a good choice and will not lose their favorite internship opportunities. The ultimate goal of study is to work. If you look for a job abroad in the future, no one cares what diploma you have. Foreign companies will never waste money, but will only recruit people who have field work experience and can get started immediately. Complete the project in a limited time with the least money. In China, because of the low labor cost, the company has recruited many highly educated talents. Although it may not be used at all, the domestic manpower is too cheap. Why not spend more money on talents? This will make the facade of the company look better.

(3) Few other people in China have mastered data warehouse technology. At present, the most mainstream data warehouse platform should be ORACLE's data warehouse tool. In foreign countries, people who know some special data warehouses, such as NCR/TEREDATA, are hard to find.

Our classmates are all very young now. Young people are full of enthusiasm and like to chase after some hot technologies. This is of course correct. After all, there are not many opportunities to learn SAP and mainframe. It is important to find a job before graduation. But I believe that with the growth of age, everyone will gradually think about the importance of mastering a stunt and less competitors in the future. In the future, if you work abroad, what skills are the best to find a job (it is easiest for people who engage in software to work abroad or emigrate, maybe you don't want to now, but I believe that a large number of students may want to travel abroad after working for many years), you should consider your future life, what kind of stunts are the most stable, the easiest and the highest income. People who engage in software, when they are older, may be more inclined to live by experience and eat by experience like medical people. You don't have to chase the emerging new software technology all day like young people. At this time, you may find that if you have some stunts in SAP or mainframe, you will have great advantages, because the technological changes in these relatively partial fields are relatively slow.

I still remember that in 2000, I cooperated with a German and interviewed some IT talents to go to Germany in their spare time. At that time, many demands of German companies came from mainframes of SAP and IBM. We didn't find any experience in this field among many applicants, or even no experience at all. On the contrary, people who have mastered popular technology are not very valuable because there are too many.

When looking for a job in the future, students should not only keep a close eye on the domestic market, but also have a global perspective. For those who work in software, you may go to work in other countries in the future. Especially in Europe, America, Japan, Singapore and other countries, there is a great demand for SAP (including IBM mainframe) talents. After all, I have seen more than my classmates. Remind students to pay more attention to the opportunity to learn these stunts in the future. Once given the chance, they will do their best. The domestic talent market can be found at www.5 1job.com, and the demand for foreign IT talents can be found on famous websites such as www.hotjobs.com, www.workopolis.com and www.monster.com. You should visit these websites frequently to understand the specific needs of the market for talents and make preparations in advance.

The above views on the field of enterprise computing are for your reference. Although they may be incorrect, they are outspoken. In short, everyone's head is on his neck, and everyone should have his own judgment.

Also note that what I said above is purely from the perspective of future employment. If you want to study abroad in the future, you should pay attention to basic courses, such as C, assembly, OOP, discrete mathematics, data structure, operating system, database principle, network, software engineering, compiler, digital circuit, computer graphics, computer composition and architecture, which can be found in it majors of foreign universities. If you have studied in China, generally speaking, you can apply for exemption from some courses when studying abroad. But I also want to remind the students that if you fail to apply for a foreign university, you will have to find a job after graduation. If you just spend your energy on the basic courses of these it majors (traditional IT education mode) and don't master some skilled technologies like J2EE, it is not easy to find a job. Some of our students have learned this lesson. From the perspective of looking for a job, what enterprises care about is not what courses you have studied, but what you can do, what skills you have and what projects you can do.

Second, the development direction of embedded system

Embedded system is undoubtedly one of the hottest and most promising IT application fields. Embedded system is used in some special equipment. Usually, the hardware resources of these devices (such as processor, memory, etc.). ) are very limited, and are sensitive to cost, sometimes demanding real-time response. Especially with the intelligentization of consumer appliances, embedded is more important. Such as mobile phone, PDA, electronic dictionary, videophone, VCD/DVD/MP3 player, digital camera (DC), digital video camera (DV), USB flash drive, set-top box, high definition television (HDTV), game machine, intelligent toy, switch, router, numerical control equipment or instrument, automotive electronics, home appliance control system, medical care.

Embedded system is a combination of software and hardware, and there are two kinds of people engaged in embedded development.

One is hardware major, such as electronic engineering and communication engineering. They are mainly engaged in hardware design, and sometimes they have to develop some underlying software that is most closely related to hardware, such as BootLoader, board support package (like PC BIOS, which drives hardware down and supports operating system up), and the most elementary hardware driver. Their advantage is that they are very clear about hardware principles, but their disadvantage is that they are better at defining various hardware interfaces, but they often cannot cope with complex software systems (such as embedded operating system principles and complex application software).

The other kind is software and computer professionals, who are mainly engaged in the development of embedded operating systems and application software. If we software learners have a good grasp of hardware principles and interfaces, we can also write BSP and hardware drivers. After the embedded hardware is designed, all kinds of functions are realized by software, and the value-added of embedded equipment depends largely on embedded software, which accounts for the most important work of embedded system (at present, many companies have given the hardware design package to specialized hardware companies, and the slightly more complicated hardware is designed by companies in Taiwan Province Province or abroad, so the domestic hardware design strength is very weak, and many embedded companies are only responsible for developing their own software. Because they all know that the difference between embedded products is largely in software, which is the most "fancy"), so we who engage in software don't have to worry about our position in the embedded market at all. The more intelligent devices and complex systems, the more important the key software, which is the current trend.

The advantages of engaging in embedded software development are:

(1) At present, people in this field are scarce at home and abroad. On the one hand, IT is difficult for non-professional IT personnel to enter this field, because the entry threshold of this field is very high, and they should not only understand the underlying software (such as operating system-level and driver-level software), but also have higher requirements for the professional level of software (embedded systems require higher space-time efficiency in software design) and understand the working principle of hardware. On the other hand, because this field is relatively new and developing too fast, many software and hardware technologies (such as ARM processor, embedded operating system, MPEG technology, wireless communication protocol, etc. It hasn't appeared for a long time, and people who master these new technologies are of course hard to find. Embedded talents are scarce, and their value is naturally high. The more experienced they are, the higher their price will be. In fact, embedded talents are scarce, and the fundamental reason may be that most people have unconditional contact, which requires corresponding embedded development boards and software, as well as experienced people to guide the development process.

(2) Different from application software such as enterprise computing, the work intensity of talents in embedded field is usually low (but their income is not low). For IT enterprises that engage in enterprise application software, once the system of this user is completed, it is necessary to engage in the next user. The needs and completion time of each user should be changed according to the requirements of customers, which is often tiring and repetitive. In contrast, companies engaged in embedded systems have their own product plans and act at their own pace. The developed products are generally universal and will not be modified by different customers. After a product model is developed, there will often be a long period of free time (or just some minor repairs to the software) and time to recharge. In addition, the work scope of embedded software is relatively narrow, and the professional technical scope involved is those (ARM, RTOS, MPEG, 802. 1 1, etc. After a long time, these things will become more and more experienced, and they will sell used books. A few instructions will be enough for those novices to ponder for half a year. If you are engaged in application software, maybe the next customer will change to a completely different software development platform, which will be bitter.

(3) If one day you want to start a business and make your own products, then embedding is a good idea, which is not as easy to be pirated as application software. Qixing, a company in the School of Civil Engineering, has developed a handheld PDA called "Project E" (there is an advertisement in front of the south campus). Construction technicians can use this PDA to carry out civil engineering calculations such as civil engineering budget estimation on site, which is said to sell well. I know a university teacher who developed a PDA(WinCE platform, which can access the Internet wirelessly) for restaurants. According to him, it sells well and restaurants can let customers click on PDA to order food, which is more fashionable. I remember that a group of students in Class 2+2 of Grade 00 designed a powerful menu system with VC++ as a course item when they were studying Windows programming course. At that time, I really wanted to suggest that they make this software into a PDA, which is estimated to have some sales (McDonald's in the south square of Shanghai Railway Station uses a beautiful PDA to order food for users, just like a decent one). The hardware design of these PDAs is usually customized by other companies (this is called "OEM"), and they are all common hardware. We only need to design software to become our own products.

The disadvantages of engaging in embedded software development are:

(1) has a high starting point, and the technology used is often difficult. If the software and hardware foundation is not good, especially the operating system-level software foundation is not deep, it may not be suitable for this trip.

(2) The number of enterprises in this field is far less than that of enterprise computing enterprises. In particular, there are many embedded small enterprises (small enterprises have to make their own products) and few well-known large companies (embedded large companies mainly include Intel, Motorola, TI, Philips, Samsung, Sony, Futjtum, Bell-Alcatel, stmicroelectronics, Zhongjing, Advantech, Huawei, ZTE, SVA and other manufacturing enterprises). The habitual way of thinking of these enterprises is to find hard professionals such as electronics and communications. Because in the past, the graduates of software colleges in regular universities mainly did enterprise computing, so the software colleges in regular universities had relatively little contact with these enterprises. The software colleges of regular colleges and universities are making active efforts, and have established contact with their central branches at present, so as to strive for the students of the software colleges of regular colleges and universities to practice or get employment in these enterprises in the future.

(3) A few companies often require people with master's degree or above to engage in embedded technology, mainly based on the difficulty of embedded technology. But most companies don't have this requirement, as long as they have experience.

If the students in the School of Software of a regular university study embedded software, they should obviously focus on embedded software, especially embedded operating system, which should be our strong point. For people engaged in embedded software, the most important technology is obviously (in fact, it is written in the recruitment advertisements of many companies):

(1) Master the structure and principle of mainstream embedded microprocessors.

(2) Must master the embedded operating system.

(3) Must be familiar with the development process of embedded software and have done at least one embedded software project.

The most important embedded software courses in software colleges of ordinary universities are:

(1) Structure and Application of Embedded Microprocessor: This is a basic course of embedded hardware, and the traditional course "Microcomputer Principle and Interface" has been replaced by this course in the software college of a regular university (at present, there are a few it majors in domestic universities, because it is difficult to find practical use to talk about x86 microcomputer principle and interface, just for teaching). As we said, embedded software is a combination of hardware and software, and people engaged in embedded software should have a full understanding of the working principle and interface technology of ARM processors, including the assembly instruction system of ARM. If you don't understand the principle of the processor, how to control the hardware work, how to write the code that saves the most memory and runs at high speed (embedded software design pays special attention to space-time efficiency), and how to write the driver (drivers are all dealing with hardware)? Many companies require familiarity with ARM processors when recruiting embedded software personnel. In the future, if students come to the company to develop embedded software, the company will give you a hardware specification (xxx specification) of the equipment. You must be able to understand the most basic instructions (like x86 assembly), otherwise how to design software. Some students think the embedded processor course is boring, mainly because the hardware course is abstract. After our embedded laboratory was built in June+10, 5438, you will feel tangible after doing some experiments. Some students are not interested in ARM assembly, and think that C language is enough for embedded development. In fact, we should not just regard assembly language as a programming language, but learn assembly mainly to master the working principle of the processor. How can a person unfamiliar with assembly language write the best C code on this processor? In some key parts of embedded development, it is sometimes necessary to write an assembly, such as Bootloader (and possibly BSP). Especially in high-speed situations (such as high-speed image acquisition and image decompression with DSP processor), at present, we mainly rely on sinks to write programs (I see many companies do this). Working in an embedded company and reading manuals describing principles, many of them may be described by assembly (I have also met them). This is because many hardware designers can only write or like to describe with assembly. At this time, you must know the assembler, otherwise the software and hardware personnel may not be able to communicate. Many embedded positions require familiarity with assembly when recruiting.

(2) embedded operating system course

Except WinCE, most embedded operating systems are very real-time, so they can also be called real-time operating systems. People engaged in embedded systems must master at least one embedded operating system (of course, it is better to master two), which is the most critical of all embedded technologies. At present, the most important RTOS mainly includes:

The first category, traditional classic RTOS: the most important is Vxworks operating system and its Tornado development platform. Because Vxworks appeared earlier, it has strong real-time performance (it is said that it can respond to external event requests within 1ms), and the kernel can be extremely small (it is said that it can be as small as 8K) with high reliability, so in North America, Vxworks occupies more than half of embedded systems. Especially in systems with high real-time requirements such as communication equipment, almost none other than Vxworks. Many concepts and technologies of Vxworks are similar to those of Linux, mainly C language development. Vxworks is widely used by Bell-Alcatel, Lucent, Huawei and other communication companies when developing products. But because of the high price, Vxworks can't be used in some small companies or products. At present, many companies are switching to embedded Linux (I heard that Huawei is doing the same at present). But in any case, Vxworks will not waver for a long time. Similar to Vxworks, there are RTOS such as pSOS, QNX, Nucleus and so on.

The second category, embedded Linux operating system: In addition to being a server operating system, the most successful future of Linux is its application in the embedded field. Of course, the reason is that it is free, open source, supports many softwares and attracts many users, so the cost of embedded products will be low. Linux itself is not an operating system designed for embedded systems, nor is it a microkernel, so its real-time performance is not strong. At present, there are two main types of Linux systems applied in the embedded system: one is the cut Linux system specially designed for embedded systems, and the most commonly used one is uClinux (without MMU function), which currently accounts for a large share of applications and can run on ARM7; The other is running on ARM 9. Generally, Linux 2.4. 18 kernel is transplanted to it, which can use more Linux functions (of course, uClinux can also run on ARM 9). Many people predict that embedded Linux will account for more than 50% of the embedded operating system, which is very important. The disadvantage is that there are too few people familiar with Linux, and the development is slightly more difficult. In addition, at present, we can find that many textbooks and many universities use ucOS/II as the real-time operating system for teaching. This is mainly because ucOS/II is simple and open source, which is very suitable for beginners to learn the principle of real-time operating system. However, due to the limited function and less practical use, ucOS/II has not been regarded as the teaching focus by the software colleges of regular universities. If you want to learn, you should learn practical things directly, such as uClinux, which is very practical. Besides, being familiar with Linux development is not only useful in embedded field, but also helpful for developing Linux application software and deepening the understanding of operating system, which can be described as killing two birds with one stone. As far as I know, at present, both Intel and Philip are doing embedded development of ARM+LINUX, while Fujitum is doing LINUX development on its own processor. At present, in the field of embedded Linux, it is particularly difficult to find people in the following aspects: one is to transplant Linux to a new model development version; Second, people who can write Linux drivers; Third, people who are familiar with Linux kernel reduction and optimization. The embedded Linux series courses in the software college of regular universities include: required courses of undergraduate operating system, optional courses of Linux programming and optional courses of embedded Linux system. At present, the software colleges of regular universities are very powerful in Linux. Teacher Wei and Teacher Zhang are familiar with Linux development, while Teacher Jin and Teacher Tang are familiar with Linux system management.

The third category, Windows CE embedded operating system: Microsoft has also seen a huge embedded market, and MS is always the best. WinCE has been around for only a few years, but it has occupied a large market share at present, especially in the occasions where PDA, mobile phone, display instrument and other interfaces require higher requirements or develop rapidly. WinCE is very popular at present (it is said that a company selling industrial computers sells boards so well that it is too late to cut WinCE for customers). At present, WinCE is mainly version 4.2 (. NET), the development platform is mainly WinCE Platform Builder. Sometimes, some upper-level applications are developed in the EVC environment. Because WinCE development is a familiar VC++ environment, it will not be too difficult for students who have studied Windows programming courses in the software colleges of regular universities, which is why WinCE is easily accepted by people. The development environment is convenient and fast, and with the strong technical support of Microsoft, the development difficulty of WinCE is much lower than that of embedded Linux. WinCE is most suitable for development occasions that are eager to complete and don't want to take risks with embedded Linux (people looking for embedded Linux are not so easy to find). After all, companies can't try like students, and it is more important to ensure the success of development. According to different emphases, WinCE has two special versions, one is that the MS PocketPC operating system is dedicated to PDA (handheld computer), and the other is that the MS SmartPhone operating system is used for smart phones (mobile phones with PDA function), both of which belong to WinCE platform. In the PDA and mobile phone market, besides WinCE, there are other well-known PDA embedded operating systems, such as Palm OS (famous for its early appearance) and Symbian. But under the strong impact of WinCE, how long will Palm and Symbian have in the future? The software college of a regular university may be the only school in China that offers a special course of "Windows CE embedded operating system", mainly for the following reasons: The software college of a regular university has a course of Windows programming in front of it, so it is very convenient and natural for students to learn WinCE after learning VC++. By learning WinCE, they can also understand the general development process of embedded software, which is also suitable for students who are afraid of Linux. Obviously, embedded LINUX can never replace WinCE, and it is hard to say who will take a large share in the future. After all, many people are more willing to accept the platform of MS, just as governments around the world have been pushing LINUX for a long time, but how many users can you see actually using Linux on PCs? According to my observation, at present, LINUX has the highest voice on the embedded platform, but WinCE is actually used more. Embedded LINUX may be more of a company with long-term product planning, so as to reduce the cost in the long run; Second, Microsoft Research Asia's support plan for WinCE courses in software colleges of regular universities. We also hope that students from the software schools of regular universities can practice through interviews with Microsoft in the future. WinCE and multimedia (such as MPEG technology) are one of the more project areas that Microsoft Asia Institute of Engineering is currently doing, and they need people who are proficient in WinCE.

Summarize the course of embedded operating system. If you think you have a deep foundation, you can study hard and learn embedded Linux. If you think that you have a good foundation in VC++ and want to learn embedded development quickly, WinCE course in the Software College of a regular university is the best choice.

(3) Other related software courses of embedded development.

If you are familiar with some major fields of embedded applications, such people are more popular with enterprises. The main related areas include:

A. Digital image compression technology: This is one of the most important and popular application fields of embedded system, and it mainly needs to master MPEG encoding and decoding algorithms and technologies, such as DVD, MP3, PDA, HDTV, set-top box, etc., which all involve MPEG high-speed decoding.