If you like finding and implementing innovative solutions, you'll fit in perfectly at Folio Financial, Inc. Folio maintains a high availability environment, which supports a complex proprietary stock trading system. Our hybrid environment requires a Principal Software Engineer that is flexible and capable of taking on responsibilities that range from strategic to tactical in nature.
The Principal Software Engineer has mastered the value, use, development and delivery of software intensive systems. They have developed skills in software development lifecycles, software engineering and applications upgrades. The Principal Software Engineer will provide strategic standards, principles, and guidelines to the application delivery teams. Responsibilities
- Provide technical application leadership and deliverables that are consistent with architectural principles, standards, methodologies and best practices.
- Provide expert knowledge of application architecture to business and technology teams and facilitate the collaborative deployments of the technology roadmaps, standards, and practices.
- Provide technical direction as well as hands-on development.
- Ensure the optimal application of technology and engineering resources to meet product development and/or customer requirements.
- Lead the specification and development effort of the comprehensive software, infrastructure, and applications with consideration to timelines, scalability, security, and privacy.
- Ensure implementation of formal processes to support the product development process.
- Develop and direct procedures and methods to ensure quality standards are met and maintained.
- Create a culture that is based on knowledge sharing and learning from best practices.
- BS in computer science and 10 years engineering experience.
- Hands-on experience with application upgrades and technical migrations within a fast-paced Java environment ( preferably in the settlement and clearing domain ).
- Senior level java architecture experience.
- Development experience within a Sybase and/or SQL Server database.
- Knowledge of reverse engineering applications (e.g. application level black box).
- Current hands-on experience with EJB, JNI, JMS, Core Java, and Java/J2EE.
- Expert level hands-on experience with Spring Frameworks - specifically Spring Boot and Spring Batch.
- Extensive experience with REST Web Services.
- Experience with Maven for automation and Junit for testing.
- Experience Agile development methodology.
- Ability to learn technology advances and implement for scalability.
- Strong problem-solving abilities
- Ability to learn quickly and apply new technologies to open problems.
- An eye for good User Interface/Experience and Design skills are a plus.
- Good attention to details.
- Excellent written and oral communication skills.
This job operates in a professional office environment. This role routinely uses standard office equipment such as computers, phones, photocopiers, filing cabinets and fax machines. Physical Demands:
The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job. While performing the duties of this job, the employee is regularly required to talk or hear. This is largely a sedentary role; however, some filing is required. This would require the ability to lift files, open filing cabinets and bend or stand on a stool as necessary. This position requires the ability to occasionally lift office products and supplies, up to 20 pounds.