Job Responsibilities: This person is responsible for developing, delivering and maintaining high quality business solutions and services that solve business problems and promote corporate revenue growth, profitability and industry leadership by being easy to install, maintain, support, use, upgrade and get service. This individual is a seasoned architect that has a deep knowledge of products, practices, and patterns used to achieve practical and functional architectural implementations. Other duties related to this role may be added based upon a business and/or company need. Below are general duties of this role:
- Develop a deep understanding of disparate product architectures and the bridges between them
- Develop and maintain technical documentation pertaining to architecture, design, and implementation
- Work closely with the VP of Software Development to develop and vet the right architectural designs to meet business and technical demands
- Convey architectural designs to the development team(s)
- Promote an environment of coaching and learning – where architectural understanding provides growth for the development team(s)
- Actively seek opportunities to improve architecture across Transflo’s product suite
- Apply effective troubleshooting methods to diagnosing tough problems, and coach others in doing so as well
- Ensure application security coverage – proactively improving our posture
- Participate in business analysis, requirements gathering or clarification for new product development / change request.
- Participate in research of new tools, technologies, or product opportunities that will help achieve corporate goals.
- Guide and participate in code reviews and feedback loops
- Provide internal and external communication of the appropriate project status.
- Develop and maintain technical documentation; e.g. product architecture, high-level design, detailed design, database design, class diagrams, physical & deployment diagrams, etc.
- Convey Architectural designs to the development team(s)
- Ensure the development team adheres to the architectural designs.
- Monitor development progress and adjust designs as challenges are uncovered
- Collaborate with team members to determine best practices and requirements for software
- Coach and train team members to ensure all necessary employees are confident in the use of software applications
- Actively seek ways to improve business software processes and interactions
- Use a proactive approach to common challenges and by continually researching best practices in coding
- Ensure application security
- Troubleshoot coding problems quickly and efficiently to ensure a productive workplace
- Perform and participate in peer design and code reviews.
- Participate, understand, and provide feedback to overall system architecture and architectural solutions.
- Participate in research of new tools, technologies, or product opportunities that will help achieve corporate goals.
- Provide internal and external communication of the appropriate project status.
- Make suggestions for improvement of the company’s policies, procedures, and products.
- Perform all other necessary tasks as requested by the immediate supervisor.
- Bachelor’s Degree (preferably within a technical discipline)
- 10+ years of software development experience
- 5+ years of architectural experience
- Proven knowledge of C# .Net 4.5 or higher
- Solid understanding of WebApi Web Services
- Solid understanding of ASP.Net or MVC
- Solid understanding of AWS
- Solid understanding of CI/CD
- Visual Studio & VSTS
- SQL (prefer SQL Server’s Transact-SQL)
- Good knowledge of Operating Systems including Microsoft Windows 7, 8, 10, Windows Server 2016, 2019, etc…
- Source Control knowledge (prefer Team Foundation System)
- General virtual machines knowledge
- General networking knowledge
- Business/Requirements Analysis skills
- Broad and extensive knowledge of the software development process and its technologies
- Knowledge of architectural styles and design patterns
- Understanding of various coding methods and computer languages
- Data modeling and database design experience
- Experience with software development lifecycle (SDLC) processes
- Experience with service-oriented architecture (SOA)
Preferred additional skills:
- Understanding and/or experience of SDLC using Agile/Scrum methodologies
- Transportation Industry knowledge
- Document Imaging experience
Individual Qualities:
- Results oriented
- Independently reliable; performs tasks without close supervision
- Organized; detail-oriented, methodical, and consistently demonstrates ability to successfully and timely complete assignments.
- Proactively follows up with leadership
- Logical problem-solving skills
- Quality conscious; consistently demonstrates commitment to customers & quality
- Demonstrates timeliness & urgency
- Teamwork; individual contributor that works well with other team members and consistently promotes a strong team environment work ethic
- Goal setting; sets/achieves goals and consistently demonstrates a willingness/dedication to process improvement
- Responsible; takes responsibility for personal actions and consistently demonstrates a willingness to accept greater project responsibilities
- Professionally candid communications
- Focused on key success factors
- Professional attitude; consistently demonstrates ability to accept criticism and manage the conversation appropriately
- Street smart; can apply knowledge and life experiences in business
- Positive attitude
- Flexible & adaptable
- Resourceful