The Doppler Quarterly (日本語) 夏 2018 | Page 47
長年にわたり、フルスタック開発とフルスタックエンジニアに関して多くの記事が書かれてきまし
た。議論は主にソフトウェア開発者アクティビティ ( 特に Web 開発 ) に関するもので、他の作業
についてはそれほど多くありません。このトピックについての意見は幅広く、 1 つか 2 つの特定領
域に特化するニーズから、製品開発プロセス全体とその結果に対する責任の所在にまでいたっ
ています。1 つの領域でのエキスパートと、
「すべての仕事をこなすが、専門分野はない」
場合の
どちらが良いのかという問題と似ていますが、どちらかに決める必要はありません。使用するア
プローチは、会社として実装する運用モデルに応じて決まります。
まず、用語とコンセプトを見直しましょう。従来、 IT 担当者は職務的役割と担当分野で組織され
ていました。UI について作業する「フロントエンド」
担当、大量のコードを開発する「バックエン
ド」担当、データを処理するデータベース管理者がいました。当然ながら、組織内には別の役割
もあります。ただし簡単のためにここでは考えません。フロントエンド、バックエンド、データベー
ス担当者は、みな自分たちのタスクをこなし、それぞれのタッチポイントでは互いに調整を図りま
す。自分たちのジョブについては本当に習熟していますが、責務は各自の領域を越えませんでし
た。短期間なら問題はなかったでしょうが、多くの組織で次第にサイロ問題が生まれ、新機能の
リリースとバグフィックスが遅くなりました。
ここで登場するのが、フルスタック開発者というコンセプトです。この考え方は、開発者がフロン
トエンドもバックエンドも得意であれば、サイロ固有の問題を効果的に取り除き、開発プロセス
を効率化し、以前より短時間で高品質のソフトウェアを生み出せるというものでした。つまり、フ
ルスタック開発者は、ソフトウェア開発のすべての側面に相当習熟しており、フロントエンド UI、
コーディング、ネットワーキング、データベースなど、スタック全体を理解している必要があります。
開発者がスタック全体に責任を持つことは、引き継ぎ段階中に発生する可能性がある課題を防
ぐことができますが、さらに重要なのは、開発者が製品全体に責任を負うため説明責任のパラ
ダイムが変わるという点です。
「� 8࠸�c:,�9.�� !x�j��x� z*�8࠺,�9.��स�j8�x�j��a8�#x�j8�a8�a��d��j8���e��c8�`�ࢸ�o���fx� �.���b��c9���c%��e��g��j8�cx� yi&��c��k��8�����8����c:e��.#��e��i��a8���j8� z,�9.���k���8�e��i8�dyd"8�a8�c9i���o�ࢸ�o��fx� ����x����x�������e���n� !x�c8�a8�8�l8� z,�9.��ह�!��f8�fx��ab8�k�H8�i8�e��b��`�ࢸ�o��f���� ���j8�d��x�i�� x��x����x�������e���n� !xह��y�*8�fx���d��j8�i�� y�'��$8�e��g�����8��x�c8�x����������x��8�k���x��8��8�c9/g9�$��e��g�����8��x�8ࢸ࠹a*��8�g�࠸�k��j��j����d��j8ऺ!�b�y�8�j��k�/�z*/8�i��cx�o��f���� �k��f���j��k�� ya*��8�g�࠸�k��j8�j���x�j��a9c�� �y�)��c8�`�ࢸ�o��fx� ��g��h8�e�� x��x����x�������e���n� !x�k�� :j�8�k�.�y.��ह�$8�e�``��d����8�������������傸ह讹k���j�࠸�h��i��a8�o��fx� �,�9.���c:!�b!��k� �x�h8�dx�j��b��b��h��i��a8���b��x�i��fx� ���gx�d��i�� x��x����x�������e���n� !x�k�������������8स�a8�c��i8�b��.��fx�j��x� x�8�����x��8��8�8�����x�k��d9��8�j�k��fx�¹k�9aj8�j�*�9�#�,�9.��� x�x�8��x�k�bb��&�� y�jy���x�k�fi9i%�� z/�z`'��j�/�y`)8�k�k����� x�b��8�l���x����8��x��8���������������k���y�+��j8�a8�a��d��j8�j��j�ࢸ�o��fx� ��hx���h��j9o�x�h��i��c��h8�ex�a8� ��d��8�k�]���8�i��k��j��a8�i��e����a��b�� ��l$x�j��c��j8࠸� H]���8�i�k�����e��8�a��j8�e��i��a8��࠸�k��j�gg�n.8�j�//8�i��a8�o��f����b��9许�b��j��gx�a��i��fx� ���gx�a��e��g����dx�i�� y��x�a8������8�x�x�8������j9n �h-9��yaix�o��i��k��`�e���k���y�+��j�/�y`)8ह�k��c�� z`,��jy�8�i]���8हo��d$x�fx���x��x��8��ਹ�a9�e8�i��k�� x�8�c���x����x�������e���n� !x�k�onybl��c9kf9g*8�e��i��a8�o��fx� ��e¸�b��e�� x�d��k�������������8�c8�`��xࡸ���a9�e8�j�`jx�e��i��a8���j8�b�� x��x����x�������e���n� !x�j��e��j��k�/�z`'��j�/�y`)�हk�����i��cx�j��a8�j8�a8�a��d��j8�i��k��`�ࢸ�o��f���� ���N9nm9i#�c��H�T�