Professional Self-Assessment
This self-assessment serves as the introduction to my CS 499 ePortfolio and summarizes my growth across software engineering, algorithms and data structures, databases, and security practices.
Ruben Melikyan
Completing the Computer Science program and developing my professional ePortfolio has allowed me to reflect on my technical growth, professional goals, and readiness to enter the computer science field. Throughout the program, I progressed from focusing primarily on writing functional code to understanding how to design, evaluate, and communicate computing solutions that are maintainable, secure, and aligned with real-world needs. The capstone experience, in particular, required me to integrate software engineering principles, algorithms and data structures, databases, and security considerations into a cohesive body of work that represents my development as a computer science professional.
One of the most important skills I developed during the program is the ability to collaborate and communicate effectively with diverse audiences. In coursework such as CS 250 and CS 340, I learned to break down complex technical problems into understandable components and explain design decisions to instructors and peers who represented stakeholders with different technical backgrounds. Through the CS 499 code review and artifact narratives, I practiced communicating my reasoning behind design choices, trade-offs, and enhancements in a clear and professional manner. These experiences strengthened my ability to support organizational decision making by providing technical insight in a way that is accessible to non-technical audiences while still being precise for technical reviewers.
My work in algorithms and data structures helped shape how I approach problem solving. Courses such as CS 260 emphasized selecting appropriate data structures, analyzing efficiency, and balancing performance with readability and maintainability. In my capstone artifact enhancements, I applied these principles by improving filtering logic, query handling, and data processing within my CS 340 dashboard project. Rather than focusing only on whether the code worked, I evaluated how efficiently it operated, how easily it could be extended, and how design decisions impacted overall system behavior. This shift in thinking represents a key milestone in my development as a computer scientist.
Software engineering and database integration are central strengths demonstrated in my ePortfolio artifacts. Through iterative enhancements of my CS 340 project, I applied object-oriented design principles, modularization, logging, and error handling to create more robust and maintainable code. For the database enhancement, I improved the CRUD module by strengthening input validation, cleaning database results, improving credential handling through environment variables, and enhancing error reporting. These changes reflect industry-standard practices and demonstrate my ability to use well-founded tools and techniques to deliver reliable, database-driven solutions.
Developing a security mindset was an important theme throughout my enhancements. Rather than treating security as an afterthought, I learned to consider vulnerabilities during the design phase. This included validating inputs, avoiding hard-coded credentials, limiting exposure of database implementation details, and planning for future changes. Courses such as CS 405 and the database enhancement milestone reinforced the importance of anticipating adversarial behavior and mitigating risks early in development. These practices have become an integral part of how I design and evaluate software systems.
The artifacts included in my ePortfolio work together to demonstrate my growth across the computer science program. Each artifact highlights a different dimension of my skills, software design and engineering, algorithms and data structures, and databases, while collectively representing my ability to integrate these areas into a complete solution. The code review video provides context for my decision-making process, the enhanced artifacts demonstrate applied technical skills, and the accompanying narratives explain what I learned and how the work evolved. Together, they present a cohesive and professional representation of my capabilities.
Overall, completing the Computer Science program and building this ePortfolio has clarified my professional goals and prepared me for entry-level roles in software or full-stack development. The process strengthened my technical foundation, improved my communication skills, and reinforced the importance of writing secure, maintainable, and well-documented code. This ePortfolio not only reflects what I have learned but also demonstrates my readiness to continue growing as a computer science professional in a rapidly evolving field.