Software Testing Career Development
http://watirmelon.wordpress.com/2008/03/13/software-testing-career-development/

對於在軟體測試上的職涯規劃, 作者非常主動地鞭策自己一直往前進. 他認為不管公司有沒有提供這樣的協助或是規劃, 自己都有責任對自己專業生涯發展做些事情.

他發現Ian Clatworthy 提出了一個 professional development framework, M.E.T.A. - Management, Engineering, Technology and Applications.

他根據這個framework加以改良, 變成Leadership, Concepts, Business-focus & Tools. 在這裡面提出在生涯發展規劃中, QA應該要具備哪些能力.

A. Leadership (Ian’s Management)
作者認為不管你是不是manger, supervisor, 或者甚至你都不需要管人, 你都會需要leadership的能力. 因此他將Ian的mangement做了些調整, 變成是leadership. 以下是作者認為要有的leadership
1. Using the right side of my brain
- being organised, tidy & efficient (following concepts like 5S), being emotionally intelligent and aware, developing creative solutions.
2. Having a project management focus
- following sound project management techniques and conducting each bit of work as a small project.
3. Writing Well
- following known writing guidelines. Documenting every bit of work. Sharing all knowledge and information.
4. Communicating Well
- Documenting every bit of work. Communicating progress and issues in the right format at the right time.
5. Team Building
- establishing productive relationships with members of teams working in and with. I can’t emphasise how important this is.
6. Finding Informal Career Guiders
- always indirectly looking out for people who you can chat to informally about career stuff. This is where I have discovered great leadership styles and techniques. I call these people career guiders because I really hate the word ‘mentor‘.
7. Being ethical
- Making sure I provide value and I am honest in everything I do.
8. Sticking up for others you work with
- Making sure that your fellow team mates are well supported.


B. Concepts (Ian’s Engineering)
對於software engineering, 作者比較重視software 部分. 也就是包含software design, development and testing相關的理論和觀念.
如果你能有正確的觀念, 那表示你對事情將會有正確的認知和認識
這些觀念通常你在大學中, 就已經學習過, 那些知識通常都歷久不衰.
1. Understanding Software Development Methodologies:
- how IT software design and development works as a whole.
2. Understanding Software Projects:
- how IT software projects work.
3. Understanding Programming:
- knowing programming concepts and techniques.
4. Understanding Testing:
- understanding testing best practices, test driven development, test automation, acceptance testing.
5. Understanding User Centred Design:
- focusing on usability and designing for users. Paper prototyping and iterative design.
6. Understanding Design:
- understanding general design principles.


C. Tools (Ian’s Technology)
作者曾經打算延用Ian的technology這個term, 但是最後他還是覺得tools比較合適. Tools和concepts的差別是, tools是用來支持 Concepts的實踐, 並且tools可能換一直更新, 但是concept通常是保持不變的.
作者目前比較著重在用open source 的tools, 因為他不用錢, 品質也不錯.
1. Programming Languages:
- such as Ruby, Python, Jython.
2. Testing Tools:
- such as Watir, OpenQA.org and homebrew test automation tools.
3. Collaboration Tools:
- such as wiki’s, defect management, blogs.
4. Versioning Tools:
- such as SVN, Bazaar VCS.

此外還一些技術(不算是tools), 作者認為也值得了解
* Ajax (Rich Internet Applications)
* Web 2.0
* Social Networking
* Tag-based Folksonomies
* RSS


D. Business-focus (Ian’s Applications)
作者認為了解目前工作上的business是如何運作, 也是非常重要的一件事情. 通常IT人員不了解, 也不太尊重他們所工作的business.
1. Understanding business goals:
- why I am employed in the first place.
2. Understanding business applications:
- what they do and how they fit into the business processes.
3. Understanding business processes:
- how business is conducted, with or without IT.
4. Understanding how business and IT collaborate and partnership:
- Hoping that the tail doesn’t wag the dog!
5. Providing value to the business:
- continuing to be employed.
6. Keeping up to date with the business:
- knowing what the business industry/competition is doing and about the other happenings in the business domain.
7. Understanding how executive management operates:
- because they usually pay you and maybe you would like to be there someday.

不知道各位看官, 你自己是如何規劃你的職涯發展? 或許和作者相去甚遠, 但是這也無所謂, 指要不要完全都沒有想過就好. 重點是要自己對自己負責, 千萬不要等公司幫你規劃, 那是會拖很久的!!
arrow
arrow
    全站熱搜

    kojenchieh 發表在 痞客邦 留言(0) 人氣()