ความสามารถและหน้าที่ Architect ด้าน IT/Software/Solution

หลายปีที่ผ่านมามีคนถามบ่อยครั้งมากเกี่ยวกับการพัฒนาความสามารถด้าน software architecture ซึ่งรวมไปถึงด้าน IT architecture และ solution architecture งานทั้ง 3 ด้านนี้คล้ายคลึงกัน ต่างกันที่ขอบเขตและระดับความลึกของงาน นอกจากนี้ยังได้ไปบรรยายและเป็นที่ปรึกษาให้กับหลายองค์กร จึงได้รายละเอียดที่เคยรวบรวมมาเอามาเล่าสู่กันครับ…

Solution Architect

ความสามารถ (ความรู้ + ทักษะ + คุณลักษณะ) ของ Architect ด้าน IT (IT Architect) หรือ ด้าน Software (Software Architect) หรือ ด้าน Solution (Solution Architect) มีมากมายมหาศาลครับ เพราะงานด้าน architecture ต้องรู้กว้าง มีความสามารถหลากหลาย ดังนั้นอย่าเพิ่งตกใจกันครับ ส่วนจะรู้ลึกไปด้านไหนก็ขึ้นกับความสนใจส่วนตัวและขึ้นกับ domain ของงานที่ทำครับ

สำหรับ architect นั้นมี 2 แบบใหญ่ๆ คือ architect แนวกว้าง (cross domain architect) หรือ architect แนวนอน ที่ต้องรู้กว้าง เก่งแบบกว้างๆ ไปทำระบบอะไรก็ได้ไม่ได้ชำนาญใน domain ใด domain หนึ่ง ไปทำงานในองค์กรในอุตสาหกรรมหรือธุรกิจประเภทไหนก็ได้ หรือระบบหรือเทคโนโลยีอะไรก็ได้ (ผมเองก็เป็น architect ประเภทนี้ครับ เพราะผมเป็นฟรีแลนซ์ ทำงานอิสระ เจอลูกค้าแบบไหนก็ได้) ส่วน architect แบบที่สองคือ architect แนวลึก (domain architect) หรือ architect แนวตั้ง ที่ต้องรู้ลึกใน domain ใด domain หนึ่ง เช่น ชำนาญด้านระบบ banking ชำนาญด้านเทคโนโลยี .NET ชำนาญระบบประเภท web application เป็นต้น สำหรับ architect ประเภทนี้ถ้าเลือกสนใจทำ domain ใดแล้ว การจะมาเปลี่ยนไป domain อื่นในภายหลัง เช่น ย้ายงาน อาจเหนื่อยหน่อย แต่ถ้าเป็นคนที่รักการเรียนรู้และปรับตัวง่ายก็ไม่น่ากังวล

คราวนี้มาดูกันครับ ว่าความสามารถและขอบเขตของ architect ด้าน IT/Software/Soltuion มีอะไรกันบ้าง…

ทักษะ และ หน้าที่

  • Analyze, design and maintain IT solution
  • Define architecture landscape
  • Analyze, design and maintain solution architecture, focus on structure and interoperation of business, data, application, service, technology, infrastructure
  • Listen to and make understanding all key stakeholder’s aspect
  • Define and clarify constraints, concerns, business goals, system features, use cases, quality attributes, mechanisms
  • Find win-win solution for all key stakeholders
  • Collaborate with a variety of stakeholders (product development, operation, infrastructure, development, vendor, etc.)
  • Define architecture principles to shape the implementation
  • DELIVER SOLUTION!

ความรู้ด้านไอที

  • Object-Oriented Analysis and Design
  • UML (Unified Modeling Language)
  • Design principles
  • Software development principles
  • Non-Functional Requirements, Quality Attributes
  • Enterprise architecture, Software architecture
  • Solution analysis, design and management
  • Software process: CMMI, Agile
  • Design Patterns, Architectural Patterns
  • IT security
  • Business technology

ความรู้และทักษะด้านอื่น (สำคัญมาก เป็น soft skill และ เป็นตัวชี้วัดสำคัญ)

  • Communication
  • Business thinking
  • Transform idea to picture by drawing/modeling
  • Feasibility study and proof-of-concept
  • Documentation
  • Consulting and coaching
  • Strategy
  • Risk and change management
  • Political and social issues handling

ArchitectingContext

คุณลักษะ/บุคลิก (สำคัญมาก และ เป็นตัวชี้วัดสำคัญ)

  • Good leadership
  • High accountability
  • Eager to learn new things
  • Good attitude and EQ
  • Thinking เช่น :
    • Creative thinking (การคิดเชิงสร้างสรรค์)
    • Integrated thinking (การคิดเชิงบูรณาการ)
    • Lateral thinking (การคิดนอกกรอบ หรือ การคิดแนวข้าง)
    • Positive thinking (การคิดบวก)
    • Strategic thinking (การคิดเชิงกลยุทธ์)
  • Good human relations
  • Good personality
  • Good decision making

ขอบเขตหน้าที่

Business Planning and General Management

  • Take ownership of a particular solution offering
  • Develop and execute a solution strategy and business plan that support product growth
  • Shape, design, and plan specific service lines in product area
  • Spearhead product marketing and product development

Subject Matter Expertise

  • Act as visionary and strategist for solution product area
  • Survey market landscape for solution insights, direction, vendors, and methods
  • Provides expertise to identify and translate system requirements into software design documentation,
  • Work with technical writers to ensure quality internal and external client-oriented documentation
  • Speak at trade conferences and seek authorship opportunities in trade publications

Business Development

  • Help marketing departments develop marketing materials and position strategies for product area, in conjunction with overall marketing message framework
  • Help business development life cycle by serving as a product SME to help identify and qualify business development opportunities
  • Manages sales and marketing activities for the service offering
  • With Channel Development team, develop and maintain vendor relationships within the product
  • Provide end to end solution and design details

Methodology and Quality Assurance

  • Lead development of formalized solution methodologies
  • Build and maintain repository for deliverables, methodologies, and business development documents
  • Interface and coordinate tasks with internal and external technical resources. Collaborates with Project Managers and technical directors to provision estimates, develop overall implementation solution plan, and serve as a lead as required, to implement the installation, customization, and integration efforts
  • Oversee aspects of project life cycle, from initial kickoff through requirements analysis, design and implementation phases for projects within the solution area
  • Provide quality assurance for services within the solution area
  • Write, or direct the writing of white papers that add further insight and thought in the solution area

Work Force Management, Supervision and Mentoring

  • Manages a team of direct reports who drive service lines in the solution area
  • Assists staffing coordinators who define project team requirements for projects in solution area
  • Work with Delivery Services Director to define overall recruiting needs and expertise in solution area
  • Work with Director of Delivery Services to establish professional development needs for practitioners in solution area
  • Mentor and guide more junior technical resources

 

แนวทางการพัฒนาและปรับปรุงความสามารถของ Architect ในองค์กร

  • จัดแบ่งกลุ่มหรือประเภทโซลูชั่นที่จะมีใช้ในองค์กร แล้วกำหนดเป็น ‘domain’ แล้วจึงกำหนดคุณสมบัติ: ความสามารถและหน้าที่ ของ solution architect ในแต่ละ solution domain แล้วจึงคัดเลือกผู้ที่มีความเหมาะสมที่จะ ‘ปั้น’ ให้เป็น solution architect
  • กำหนดระดับของ solution architect ตามความสามารถ (ไม่ใช่อายุและวุฒิการศึกษา)
  • กำหนดระดับความสามารถ (competency) ซึ่งประกอบด้วย ความรู้, ทักษะ และ คุณลักษณะ จากนั้นกำหนด career path, job description, learning path แล้วกำหนดตัวชี้วัดสำหรับ solution architect แต่ละระดับ และกำหนดให้กับสำหรับ solution architect แต่ละคน

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s