Design, develop and maintain the overall architecture of web-based applications for internal and external users.
Stay on top of the software vulnerability landscape and be up-to-date on current attacks or potential attacks and prepare counter-measures (if possible) to thwart those attacks or at least be prepared for them.
Develop software using various programming languages and related tools and frameworks, reviewing code written by other programmers, requirement gathering, bug fixing, testing, documenting and implementation.
Identify, analyze and develop solutions for the following platforms
MuleSoft ESB Platform
Java Web Apps running on Tomcat
F5 LTM Load Balancers
OpenShift
Troubleshoot problems, provide solutions, and guidance for our development staff, in regard to the following languages: HTML, Java, JavaScript, SQL.
Communicate with the users to determine problems or design requirements.
Conduct ongoing research on latest technologies, open source projects and languages.
Coaching, mentoring, and assisting developers with standards and best practices.
Other duties as assigned by the Manager of Application Development.
QualificationsSkills and Qualifications:
Minimum of 5 years of software architecture experience combined with at least 5 years of product development and web development on Java platforms.
Ability to program/script in Java, JavaScript, ANT, PowerShell, Bash, Windows Batch, HTML/CSS and Swift preferred.
Strong experience with implementing RESTful and SOAP web services in an enterprise environment.
Strong experience with Authentication Mechanisms (SAML, JWT, OAuth, mTLS, NTLM).
Experience working with OpenShift platform is a plus.
Experience installing/configuring/using the following environments: Tomcat Application Server, Linux, Windows, Web Load Balancers (F5 experience a plus), Eclipse, IntelliJ IDEA, Bitbucket/Git preferred.
Experience in building, testing, and distributing iOS and Android applications is a plus.
Experience with automation tools.
Strong communication skills with the ability to communicate with both the business community and the technical community.
Team oriented and possess a continuous improvement mindset.
Strong analytical skills, self-motivation, and attention to detail
Education Requirements:
High School diploma or equivalent.
BS or BA in Computer Science or related field