It's fun to work in a company where people truly BELIEVE in what they're doing!
Job Description Summary:
The Senior Software Engineer designs, develops, troubleshoots, debugs, and sets the direction for the design and implementation of software features/functionality/enhancements, correction of defects, and/or the creation of new products. Develops software tools including operating systems, compilers, routers, networks, utilities, databases, and Internet-related tools. Determines software’s compatibility with hardware and/or influences software's design in relation to hardware.
Position Reports to: Director, Software Engineering
The Compiler Software Engineer designs, develops, troubleshoots, debugs, and sets the direction for the design and implementation of software features/functionality/enhancements, correction of defects, and/or the creation of new products. Develops software tools including operating systems, compilers, routers, networks, utilities, databases, and Internet-related tools. Determines software’s compatibility with hardware and/or influences software's design in relation to hardware.
Essential Duties and Responsibilities:
Review and provide feedback on designs.
Takes ownership of the design and development of features within their component.
Recognizes and practically solves for anti-patterns.
Good understanding of how his/her work aligns with high-level use cases and team deliverables.
Define (more than a feature, less than a product) a component that fits into an architecture.
Describe and defend design decisions for components owned by the team.
Optimize software design to leverage platform capabilities.
Acts as the technical subject matter expert for a product domain.
Quantify and communicate work estimates and risks to direct management
Handle multiple competing priorities with minimal help
Understand features as a whole and able to break down larger stories and features into tasks
Familiar with most of the technologies we focus on and what markets they target
Takes ownership of customer issues and effectively communicate with Support/SEs to resolve field questions/issues
Discuss with customers what larger concerns and problems they are trying to solve, over and above the immediate technical concerns
Willingness to teach and grow junior team members
Excellent listening skills
Effectively works within the team and across teams
Ensures all tasks are completed thoroughly and that any work done is tested, unit tested, documented, and ready for customers
Takes identified problems and concerns and create a plan to fix the problem and prevent it from occurring again
Follows through on all tasks
Reliably delivers expected work products and outcomes
Imparts a sense of urgency on junior team members
Mastery of data structures and algorithms.
Able to select data structures and algorithms to solve technical problems.
Able to write high-quality code rapidly.
Able to present a track record of solving problems of increasing complexity
Good understanding of trade-offs in solving problems that have variable levels of complexity.
Good understanding of trade-offs in solving problems that have variable levels of complexity.
Able to understand and extend a robust transpiler that converts legacy computer languages to modern languages
Willing to collaborate with other developers and stakeholders to understand specific legacy functionalities and their intended outcomes in the new system.
Able to analyze the source language's features, syntax, and semantics to ensure accurate and functional translation into TypeScript.
Proven experience in building compilers or transpilers, particularly for high-level programming languages.
Preferred Qualifications:
Strong foundation in computer science with an emphasis on programming languages, compiler construction, and software architecture.
Technical understanding of TypeScript, OCaml or other languages with rich type systems and type inference
Experience with the legacy enterprise languages
Active participation in language implementation community, including contribution to open source projects
Bachelors/Masters degree in Computer Science or equivalent
Travel Requirements:
0-10%
#LI-JC1
#LI-Remote
Job Family Group: Engineering
Job Family: Software & Quality Assurance Engineering
Job Profile Name: Senior Software Engineer
Employee Type:Individual Contributor
Job Level: P4 (Advanced)
The base salary range for this role is $124,556.33 - $155,695.33 /year. Exact compensation may vary based on skills, experience, and location.
.
What Rocket Software can offer you in USA:
Extensive paid time off programs (paid holidays, sick, and unlimited vacation time)
Healthcare coverage options to fit you (and your family’s) needs
Retirement savings, with matching contributions by Rocket Software
Life and disability coverage
Leadership and skills training opportunities
Two paid work days for off-site training
EOE M/F/Vet/Disability. Rocket Software Inc. is committed to creating a diverse environment and is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status. Rocket Software Inc. is also committed to compliance with all fair employment practices regarding citizenship and immigration status.
Rocket is committed to working with and providing reasonable accommodation to individuals with physical and mental disabilities. If you need special assistance or an accommodation while seeking employment, please call: 781-577-4321 or send an email to people@rocketsoftware.com. We will make a determination on your request for reasonable accommodation on a case-by-case basis.
It is unlawful in Massachusetts to require or administer a lie detector test as a condition of employment or continued employment. An employer who violates this law shall be subject to criminal penalties and civil liability.
If you like wild growth and working with happy, enthusiastic over-achievers, you'll enjoy your career with us!