電腦效能應用與安全研究室 Performance, Applications and Security Lab


我們的研究範圍很廣,從嵌入式系統、手機應用、一直到雲端計算、商務應用、資訊安全都有做。
我們的合作研究夥伴很多,包括聯發科、IBM、中研院、資策會,還有和台大、清大、交大的教授合組研發團隊
,包括高階應用處理器架構研究、虛擬化技術、異質計算、系統軟體等重要技術的研究與創新,我們很關切台灣人才與產業的未來。

2010年3月19日 星期五

IBM徵求軟體研發人才 - Performance, Security, Linux Kernel

IBM最近在台灣擴大軟體研發團隊,也和我們談妥合作計畫,在雲端運算的趨勢中,研究及開發適用於虛擬主機的網路安全相關的技術。IBM高階主管在洽談中也提到適任的人才難尋,這也是台灣現在所面對的困境。長久以來,業界專注於低門檻的系統組裝和組件開發,學界專注論文發表的數量,「系統與軟體工程」沒有受到應有的重視。今天業界投入「智慧手機」和「雲端運算」,要建構有足夠競爭力的團隊,除了嚴重缺乏基層系統軟體研發人才,更缺少有經驗的中高階研發主管。

系統與軟體工程,要懂得東西太多了,絕不是一兩年的苦練,就能夠造就出人才。以往的短視,造成今天的情況,許多教授和學生還濛濛懂懂,檯面上的長官只會呼口號講場面話,有可能解決問題嗎?令人想起以前的孫運璿和趙耀東,今天有人能為台灣找到下一個黃金時代嗎?

回想我五年前剛回國時,見到這情況,比對自己在學界和業界的經驗,真是難以理解。現在對於台灣的產學生態多方瞭解之後,也只能習以為常了。君不見,許多所謂大型的研究計畫(還記得「太空計劃」嗎?),到後來都不了了之。在此大環境中,為了個人理想,也只有盡一己綿薄之力,做個人認為是對的事。花費兩年時間和精力來訓練碩士研究生,能夠在最後半年做出一點研究成果就算是難得了,必須靠著不斷累積和苦心經營,才能有真正重大的創新。大部分的時候,這些可說是賠本生意;然而,來學校教書就不要計較這些利害得失,不是嗎


以下IBM Jeffery 2010.03.18的來信,徵求的人才,正是我一直在培養的。放在這裡給大家參考,也不妨多想想在學校該學些什麼。



Hi Professor,

Here is the list of job opportunities we currently have for appliance related projects. Please help to forward these opportunity to anyone you think appropriate.
The resume can send to our HR contact (ivanl@tw.ibm.com) , or me : )

Thank you !

1. Software Performance Analyst:

Job description
Employees in this role use mathematical and benchmarking techniques to analyze the performance characteristics of a running software system, and make tuning and testing recommendations to improve those characteristics. In addition, employee will also perform code inspections and use profiling tools in order to find patterns causing less than optimal performance. They interpret data from performance tests and use this information in capacity planning and client support.   

Required   
    * Bachelor's Degree
    * At least 2 years experience in Java programming language skills with debugging and concurrency test experience.
    * At least 1 year experience in IBM product skill including WAS, WPS, WESB
    * At least 1 year experience in Operating system - AIX, Linux and Windows
    * At least 1 year experience in Database - DB2 and Oracle. Ruby
    * At least 6 months experience in Performance measurement and turning
    * English: Fluent
    * Chinese traditional: Fluent

Preferred   
# Master's Degree in Information Technology

2. Software Performance Engineer

Job description
This role executes the tasks required to fully test an IBM product or system to ensure it functions according to specifications and customer requirements and meets the business needs. Testing activities cover all aspects of the product/system including function/component, performance, system, regression, and service. People in this role must demonstrate knowledge of the domain that they are responsible for testing. For example, a functional tester must have deep knowledge of the function that they are responsible for. A solution tester must have knowledge of the overall solution. Knowledge of the target market for the product and the customer environment is necessary. They must also be familiar with testing methodology, tools and techniques. Software Testers may set up test environments, design and plan testing activity, develop test cases/scenarios/use cases, and/or execute required testing. Testers also investigate problems uncovered during testing, recreating those problems as appropriate and executing fix validations. They provide feedback on usability, serviceability and documentation and report status to the appropriate audience. This position will includes developing new tests as well as executing and maintaining existing tests. Perform maintenance and ongoing operation of physical QA lab setup and configuration. Maintain and execute automated tests using scripting and programming languages. Main focus for this position is to Server Product line as define in the requirement and Test Plans.   

Required   

    * Non-Degree Program
    * At least 1 year experience in Virtualization technology (e.g. VMware, Windows Hypervisor, Xen and KVM)
    * At least 1 year experience in troubleshooting skills in MS Windows, Linux and UNIX environments
    * At least 1 year experience in TCP/IP networking and troubleshooting skills
    * At least 1 year experience in developing Test Plan and Test Cases
    * At least 1 year experience in developing Test Automation software and good understanding of automation framework.
    * At least 1 year experience in Java, VBScript, Perl or Shell Scripting
    * English: Fluent
    * Chinese traditional: Fluent

Preferred   
# Master's Degree in Information Technology
# At least 4 years experience in Virtualization technology (e.g. VMware, Windows Hypervisor, Xen and KVM)
# At least 4 years experience in troubleshooting skills in MS Windows, Linux and UNIX environments
# At least 4 years experience in TCP/IP networking and troubleshooting skills
# At least 4 years experience in developing Test Plan and Test Cases
# At least 4 years experience in developing Test Automation software and good understanding of automation framework.
# At least 4 years experience in Java, VBScript, Perl or Shell Scripting
       
Additional information
* Hands on experience configuring server hardware and deployment of Linux, UNIX and MS operating Systems.
* Excellent English communication and listening skills. Someone who has prior experience working with US customer/Partners.
* Good understanding of Software development / Test life cycle.
* Good understanding for Security Software testing.
* Travel ready to Atlanta.   

3. Senior Software Developer - Linux and Kernel programmer

Job description
Employees in this role use design documentation, such as Functional Programming Specifications and high level design documents to implement the identified components. They also ensure that the implemented components are unit tested and ready to be integrated into the product. Software developers also provide fixes to defects identified by the verification team during the software development life cycle.

We are looking for people with strong background in computer science, that are interested in a software development role. We are seeking people from Engineering, Computing, and IT disciplines. Our ideal candidates must have strong technical skills, a passion for technology and software, strong teaming skills and show leadership potential. Must be able to work in a high energy environment and exhibit creative thinking and collaboration. Having the ability to turn ideas into reality, communicate effectively, and work closely with others in teams around the world is essential. Our positions offer an excellent opportunity to develop technical skills with a multi-disciplinary team of developers, designers and business professionals focused on the next generation of software. You will gain real life experience with a corporate position that will not only impact IBM’s bottom line but also influence the future of software. Previous work or co-op experience on software project is a plus.

Job requirement:
- Programming fundamental: Data structures, Algorithms, ability to produce quick prototypes, IPC, Memory models, Process and Threads, Globalization, Ability to convert marketing requirements to code. Design and develop new classes to complex modules and provide interfaces and definitions. Strong programming in multithreaded and multi processors (or cores) environments.

- Programming Languages: C, C++ Ability to reverse engineer application/code. Should have sound understanding on various (popular) toolkits, SDK, APIs and Kernel development   

Required   

    * Bachelor's Degree in Information Technology
    * At least 5 years experience in Network Programming
    * At least 5 years experience in Linux programming with c/c++
    * At least 5 years experience in Linux kernel
    * English: Fluent
    * Chinese traditional: Fluent

Preferred   
# Master's Degree
       
Additional information
* Proficient in English/Chinese communication is required.
* At least 5 years on network programming experience is plus.
* Have network security experience is plus.
* Full product lifecycle management   

4. Senior Software Developer for network security - Microsoft Windows programmer

Basic requirements for this job:
Programming fundamental: Data structures, Algorithms, ability to produce quick prototypes, IPC, Memory models, Process and Threads, Globalization, Ability to convert marketing requirements to code. Design and develop new classes to complex modules and provide interfaces and definitions. Strong programming in multithreaded and multi processors (or cores) environments.

Bachelor's Degree in Information Technology
At least 5 years experience in Testing on UTM or IPS
At least 5 years experience in Linux shell scripts
At least 5 years experience in Configuration/verification on security product
English: Fluent
Chinese traditional: Fluent

5. Senior Software Testing Engineer - Network Security
Bachelor's Degree in Information Technology
At least 5 years experience in Testing on UTM or IPS
At least 5 years experience in Linux shell scripts
At least 5 years experience in Configuration/verification on security product
English: Fluent
Chinese traditional: Fluent


-- Jeffrey

沒有留言:

張貼留言